『壹』 計算機組成原理中數值數據和非數值數據
數值數據在計算機中用二進製表示。非數值數據又稱為字元數據,通常是指字元,字元串,圖形符號和漢字等各種數據,它們不用來表示數值的大小,一般情況也不進行算術運算。ASCII為美國國家信息交換字元碼。用七位二進制數表示一個字元。共128個。10個十進制數,52個英文大小寫,34個專用字元和32個控制字元。漢字可以用國標碼表示,也可以用區位碼,以及機內碼。漢字的字形碼用來在點陣中顯示漢字。
『貳』 大學計算機基礎:簡述數值、字元、漢字、聲音、圖像等信息在計算機中是如何表示的
計算機要處理的信息是多種多樣的,如日常的十進制數、文字、符號、圖形、圖像和語言等。但是計算機無法直接「理解」這些信息,所以計算機需要採用數字化編碼的形式對信息進行存儲、加工、和傳送。
信息的數字化表示就是採用一定的基本符號,使用一定的組合規則來表示信息。計算機中採用的二進制編碼,其基本符號是「0」和「1」。
主要有數的表示和非數值表示
一、計算機中數的表示
在普通數字中,用「+」或「—」符號在數的絕對值之前來區分數的正負。在計算機中有符號數包含三種表示方法:原碼、反碼、補碼。
1、原碼表示法:
用機器數的最高位代表符號位,其於各位是數的絕對值。符號位若為0則表示正數,若為1則表示負數。
2、反碼表示法:
正數的反碼和原碼相同,負數的反碼是對原碼除符號位外各位取反。
3、補碼表示法:
正數的補碼和原碼相同,負數的補碼是該數的反碼加1。
『叄』 什麼是非數值型數據的基礎
非數值型數據的基礎是字元數據。非數值數據(符號數據)則用於表示一些符號標記,如英文字母、數字、標點符號、運算符號、漢字、圖像、語言信息。基礎是字元數據,所用的編碼是ascll編碼。
『肆』 計算機內部表示信息的方法
計算機在處理各種信息時,首先要將信息表示成具體的數據形式。計算機內的信息都是以二進制數的形式表示,但人們日常生活中慣用的畢竟是十進制數。為了簡化二進制的表示,在計算機科學中還引入了八進制和十六進制。
一、常見的進位計數制
人們的生產和生活中離不開數,數有各種表示方法,通常把數的記寫和命名稱為計數;不同的記寫和命名方法構成計數制,即數制。按進位的原則進行計數,稱為進位計數制。進位計數制的種類很多,例如,人們日常生活中使用的十進制、表示角度用的60進制、表示時間(小時)用的12進制等。
1.計數制的概念
構成進位計數制要有兩個基本要素:
(1)基數——基本符號的個數。
(2)進位所遵循的原則:逢基數進一。
例如:十進制數的基本符號為:0、1、2、3、4、5、6、7、8、9;基數是10;進位原則是:逢十進一。
有了進位制,就有了數據的表示方法和計算的依據。一般說來,任何R進制都可採用位權表示法。
例2-1:十進制數234.56按位權展開的多項式為:
234.56=2×102+3×101+4×100+5×10-1+6×10-2
一般的,在R進位制下的數可以表示為:
anrn+an-1rn-1+…+a1r1+a0r0+a-1r-1+a-2r-2+…+a-mr-m
其中,an,an-1,…,a-m為系數,r為基數,n,n-1,…,1,0,-1,-2,…,-m為權。
2.常用進位計數製表示方法
在計算機科學中,常用進位計數制有二進制、八進制、十進制和十六進制。
(1)基本符號
二進制:R=2,基本符號是0、1
八進制:R=8,基本符號是0、1、2、3、4、5、6、7
十進制:R=10,基本符號是0、1、2、3、4、5、6、7、8、9
十六進制:R=16,基本符號是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F;其中A~F分別對應十進制數的10~15。
十、二、八、十六進位制對應關系如表2-1所示。
(2)表示方法 由於不同進位制中存在相同的符號,為了加以區別,常在數據後加上一個英文字母作為不同進制數據的標識,二進制用B(BIN),八進制用O(OCT),十進制用D(DEC),十六進制用H(HEX)。也可以在數據右側用基數標注來區別不同的進位制數據。
例如:二進制數10101可表示為:10101B或101012,
八進制數132可表示為:132O或1328,
十進制數45.27可表示為45.27D或45.2710,
十六進制數43F可表示為43FH或43F16。
當十六進制數最高位為字元符號時,為了與變數名區別,需要在其前冠以數字0。例如:十六進制數CE5表示為0CE5H或0CE516。
表2-1 十、二、八、十六進位制對應關系
(3)按位權展開式 任意進制數都可按位權展開為多項式,計算該多項式可以得到它相應的十進制數值。實際上,這也是把任意進制數轉換成十進制數的方法。
例2-2:10101B=1×24+0×23+1×22+0×21+1×20=21D
例2-3:1011.101B=1×23+0×22+1×21+1×20+1×2-1+0×2-2+1×2-3=8+0+2+1+0.5+0+0.125=11.625D
例2-4:132Q=1×82+3×81+2×80=90D
例2-5:43FH=4×162+3×161+15×160=1087D
在微型計算機的應用中,內存地址的編址、顯示內存單元里的數值、顯示ASCII碼值、匯編語言源程序中的地址和數值信息均採用十六進制數表示。例如1M內存,其內存單元的編址為00000H-0FFFFFH。
還要強調指出,在微型計算機的應用中引入十六進制數的目的主要是為了書寫上的方便,實際上在計算機內部信息處理仍採用二進制數。
(4)進位規則下的簡單運算 無論何種進位制,其進位規則都是:「逢基數進一」,對於二進制是「逢二進一」,對於十六進制是「逢十六進一」。借位也是遵循這個規則。
例2-6:計算1011B+1010B的值。
信息技術基礎第一冊基礎篇(第二版)
則:1011B+1010B=10101B
二、不同計數制間的等值轉換
二進制計數與人們日常應用習慣的十進制數差別很大,二進制數的數位比起等值的十進制數要長的多,而且讀寫困難,作為書寫、交流的手段,使用二進制數是很不方便的,因此人們通常使用八進制和十六進製作為二進制的縮寫方式。這就產生了一個不同進制之間的轉換問題。
1.十進制轉換為任意進制的基本方法
在十進制數轉換為其他進制數要按照十進制數的整數部分和小數部分兩種不同的情況採用不同的方法來處理。
(1)十進制整數轉換為其他進制整數的方法如下:
十進制整數轉換成其他進制採用「除基數取余」法,轉換過程是,將十進制整數除以基數,得到一個商和余數,再將商除以基數,得到另一個商和余數,如此繼續下去直到商為0結束。最後將余數按逆向方式依次排列,即最後一個余數作為最高位,第一個余數為最低位,即可得到以該基數為進制的各位數字。
例2-7:將13D轉換為二進制數。
信息技術基礎第一冊基礎篇(第二版)
則13D=1101B
(2)十進制純小數轉換為其他進制純小數的方法如下:
十進制純小數轉換為其他進制純小數採用「乘基數取整」的方法。轉換過程是,將十進制純小數乘以基數,得到一個積,然後去掉積的整數部分,將剩下的純小數再乘以基數,如此繼續下去,直到純小數部分為零或滿足所要求的精度為止。最後將去掉的整數部分(0或1)按乘得的先後依次排列下去,即可得到所求小數點後的各位數字。
例2-8:將0.25D轉換為二進制數。
信息技術基礎第一冊基礎篇(第二版)
則0.25D=0.01B
混合小數由整數和純小數部分組成,十進制混合小數轉換為其他進制數時,先將這兩部分按前面所介紹的方法分別轉換為對應的整數部分和小數部分,然後再用小數點將它們組合起來。
需要指出,在十進制數小數轉換為其他進制數小數時,並不是都可以完整地實現精確轉換,例如:0.13D無論進行多少次乘2運算,其小數部分都不可能為0,因此,只能根據精度需要進行有限次運算得到適當的近似值。
2.二進制與八進制、十六進制數之間的相互轉換
二進制、八進制、十六進制數都可以表示為2的整數次冪的形式,我們可以從中看到它們之間存在如下特殊的關系(表2-2):
表2-2 二進制、八進制、十六進制數轉換關系
從以上關系可以看到3位二進制數恰好是一位八進制數,4位二進制數恰好是一位十六進制數。因此,二進制數與八進制數,二進制數與十六進制數之間的同值轉換則可以通過「分組法」實現。
(1)二進制數與八進制數之間的同值轉換 二進制數轉換為八進制數時,以小數點為界,整數部分自右至左,每3位一組,最左邊不足三位時,在最左邊用0補齊;小數部分自左至右,每3位一組,最右邊不足三位時,在最右邊用0補齊;然後各組轉換成相應的八進制數。
例2-9:將11101.11001B轉換為八進制數
11101.11001B=(011)(101).(110)(010)=35.62O
反之,將八進制數轉換為二進制數,只要把每位八進制數用對應的3位二進制數表示即可。
例2-10:將15.32O轉換為二進制數
15.32O=(001)(101).(011)(010)=1101.01101B
(2)二進制數與十六進制數之間的同值轉換 與二進制數轉換為八進制數的轉換相仿,只是按4位二進制數對應一位十六進制數進行分組即可。
例2-11:將1100011.10111B轉換為十六進制數
(1100011.10111)B=(0110)(0011).(1011)(1000)=62.B8H
例2-12:將26D3.4AH轉換為二進制數
26D3.4AH=(0010)(0110)(1101)(0011).(0100)(1010)=10010011011010011.0100101B
3.十進制數與二進制數相互轉換的簡便方法
二進制數與十進制數之間的轉換,無論是「除二取余」、「乘二取整」,還是使用「按權位相加」等方法,運算都很復雜,特別是在作較大數值轉換時,更不便記憶且也容易出錯,下面給出十進制數與二進制數相互轉換的簡便方法供參考。
為了研究的方便,首先給出如下二進制數位權與對應二進制數的對照表:
十進制整數與對應的二進制整數的對照表如表2-3所示。
表2-3 十進制整數與對應的二進制整數的對照表
十進制小數與對應的二進制小數的對照表如表2-4所示。
表2-4 十進制整數與對應的二進制小數的對照表
利用上表,採用「降冪法逐次查找」的方法,即可方便地進行十進制數與二進制數相互轉換,我們可以通過下面實例描述用「降冪法逐次查找」將十進制數1250D轉換為同值的二進制數的基本過程。
1250D=1024+(1250-1024)=1024+226=1024+128+(226-128)=1024+128+98=1024+128+64+(98-64)=1024+128+64+34=1024+128+64+32+(34-32)=1024+128+64+32+2=210+27+25+21=1001110010B
同樣,可以利用對照表,參照上述方法實現十進制小數與對應的二進制小數的轉換。
三、計算機中非數值信息的數據編碼
將各種信息形式轉化二進制編碼形式的過程叫做數字化。在計算機的虛擬世界中,除了數值信息,還有文字、符號、圖像、聲音、動畫等豐富多彩的非數值信息,它們也都是用二進制特定編碼來表示的。因為信息的表示完全依賴於計算機的硬體及其物理狀態,因此必然有其特殊的實際意義和優勢。
1.採用二進制編碼的優勢
(1)易於物理實現且穩定可靠 二進制的基本符號是「0」和「1」,它們與穩定狀態的物理現象有準確的對應關系,例如,電壓的「正」與「負」、電路的「通」與「斷」、光的「有」與「無」、材料的「磁化」與「未磁化」等。計算機的各組成部分都由僅有兩個穩定狀態的電子元件組成,不僅容易實現,而且穩定可靠。
(2)運算簡單 二進制僅有2個基本符號,運演算法則也就極其簡單,以乘法為例,只有0×0、1×0和1×1這3種形式,而採用十進制則需要55種形式。顯然,計算機內部採用二進制編碼可以大大簡化物理設計。
(3)可以方便地實現邏輯功能 二進制的兩個基本符號「0」和「1」恰好對應邏輯判斷的「真」與「假」,在計算機內部採用二進制編碼可以方便地實現邏輯功能。
(4)保證可靠性「0」和「1」是二進制僅有的基本符號,也就是說,某一數位不是「0」,便是「1」,沒有其他可能。兩種狀態十分分明。用物理量表示這兩種狀態可使數據在傳遞過程中的抗干擾能力、鑒別信息能力以及糾錯能力大為提高,從而使可靠性得到保證。
2.常用的編碼形式
非數值信息在計算機內需要特定的二進制代碼編碼表示。編碼是指用少量基本符號根據一定規則組合起來以表示大量復雜多樣信息的方法。計算機中的數據編碼很豐富,這里僅簡單介紹以下幾種常用的編碼形式。
(1)ASCII碼 ASCII碼(American Standard Code For Information Interchange,美國標准信息交換碼)是目前在微型計算機中最普遍使用的字元編碼,是用7或8位二進制數進行編碼的。位元組最高位一般不使用,基本ASCII碼最多可以表示128個不同字元,其最高位可作為校驗碼,用於提高字元信息傳遞的可靠性。
基本ASCII碼包括0~9共10個數字字元,大小寫英文字母及專用符號等95個可列印字元,除此還有33個控制字元。每一個字元對應一個二進制編碼,按類別順序排列,以便於查找。例如0~9這10個數字用30H~39H表示,即110000B~111001B。基本ASCII碼表見附錄。
ASCII碼是可以擴展的,盡管美國國家信息協會已對擴展ASCII碼給出了定義,但實際上多數國家都將擴展的ASCII碼規定為自己國家語言的字元代碼,如中國把擴展ASCII碼作為漢字的機內碼。
(2)漢字編碼 漢字的字數繁多,字形復雜,字音變化多樣,常用的漢字就有7000個左右,用一個位元組表示是絕對不可能的,因此多採用2個位元組表示。在計算機中使用漢字,必須要解決漢字的輸入、存儲和輸出等關鍵問題。
在輸入漢字時,使用「輸入碼」,根據不同的輸入方法,它又細分為區位碼、拼音碼、字形碼。在計算機內部處理漢字時需用漢字機內碼,把漢字編碼轉換成二進制的專用代碼來處理。在輸出漢字時,需要字形碼,這樣才能使漢字正確地顯示在輸出設備上。
四、信息的計量單位
在計算機內部,數據是信息的載體。無論是程序還是數據信息(包括數值信息和非數值信息)都以二進制形式存放在存儲器(包括內存和外存)中。數據存儲、信息傳遞、軟體設計、計算機性能評價等都涉及到信息的計量。信息計量的單位為以下幾種:
(1)位/比特(bit)位是計算機中存儲信息的最小單位;通常稱為一個比特(bit)。一個比特就是一個二進制數位,即一個「0」或一個「1」。
(2)位元組(B、Byte)位元組是計算機中信息存儲和處理的最小單位,一個位元組有8個二進制數位,即有8個比特。一個位元組可以存放一個ASCII字元代碼,也可以存放-128~127范圍內的整數。
隨著計算機存儲信息容量的不斷擴大,用位元組來度量存儲容量會出現很大的數值,於是便出現了KB(千位元組)、MB(兆位元組)、GB(吉位元組)、TB(太位元組)和PB等度量單位。它們的關系是:
1 KB=1024 B 1MB=1024 KB 1GB=1024MB 1 TB=1024GB。
(3)字 字又稱為「計算機字」,是2個位元組的組合。字作為獨立的信息單位存在,是信息存儲、加工、交換的基本單元。字常用來表示數據或信息的長度,例如,1個漢字佔1個字,即佔2個位元組。一般一個整數佔一個字,即16位二進制數位,一個單精度實數佔2個字,即佔32位二進制數位。