第02章 計算機中的數制和編碼_第1頁
第02章 計算機中的數制和編碼_第2頁
第02章 計算機中的數制和編碼_第3頁
第02章 計算機中的數制和編碼_第4頁
第02章 計算機中的數制和編碼_第5頁
已閱讀5頁,還剩102頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第第2 2章章計算機中的數制和編碼計算機中的數制和編碼主要內容主要內容計算機中的常用計數制、編碼及其相互間的計算機中的常用計數制、編碼及其相互間的轉換;轉換;二進制數的算術運算和邏輯運算;二進制數的算術運算和邏輯運算;符號數的表示及補碼運算;符號數的表示及補碼運算;二進制數運算中的溢出問題;二進制數運算中的溢出問題;基本邏輯門及譯碼器;基本邏輯門及譯碼器;定點數與浮點數的表示方法。定點數與浮點數的表示方法。第第2章章 計算機中的數制與編碼計算機中的數制與編碼主要內容:主要內容:n2.1 計算機中的數制計算機中的數制n2.2 無符號數二進數制數的運算無符號數二進數制數的運算n2.3 符號數的表示

2、及運算符號數的表示及運算n2.4 定點數與浮點數定點數與浮點數n2.5 計算機中的編碼計算機中的編碼第一節第一節計算機中的數制計算機中的數制mov ax,12hcall displayJmp 1234h主要內容:主要內容:n2.1.1 常用計數制常用計數制n2.1.2 各數制間的轉換各數制間的轉換2.1 計算機中的數制計算機中的數制2.1 計算機中的數制計算機中的數制n了解:各種計數制的特點及表示方法;了解:各種計數制的特點及表示方法;n掌握:各種計數制之間的相互轉換。掌握:各種計數制之間的相互轉換。2.1.1常用計數制常用計數制十進制十進制(Decimal) 符合人們的習慣符合人們的習慣二進

3、制二進制(Binary) 便于物理實現便于物理實現十六進制十六進制(Hex) 便于識別、書寫便于識別、書寫八進制八進制(Octal)1.十進制十進制n特點:以特點:以10為底,逢十進一;為底,逢十進一; 共共有有0-9十個數字符號十個數字符號。n表示:表示:權表達式權表達式120112011101010101010nnmnnmniiimD DDDDDDn:整數位數:整數位數 m:小數位數:小數位數2.二進制二進制n特點:以特點:以2為底,逢為底,逢2進位;進位; 只有只有0和和1兩個符號。兩個符號。(數后面加數后面加B)n表示:表示:權表達式權表達式12012n 12011( )222222n

4、nmnmniiimBBBBBBBn:整數位數:整數位數 m:小數位數:小數位數3.十六進制十六進制n特點:以特點:以16為底,逢為底,逢16進位進位(數后面加數后面加H) 有有0-9及及A-F共共16個數字符號,個數字符號,n表示:表示:權表達式權表達式1201161n 2011( )161616161616 nnmnmniiimHHHHHHHn:整數位數:整數位數 m:小數位數:小數位數4.任意任意K進制數的表示進制數的表示一般地,對任意一個一般地,對任意一個K進制數進制數S都可表示為都可表示為120n 120111( )nnknmmniiimSSKSKSKSKSKSK 其中:其中: Si

5、- S的的第第i位數碼,可以是位數碼,可以是K個符號中任何一個個符號中任何一個 n,m 整數和小數的位數;整數和小數的位數; K - 基數;基數; Ki - K進制數的權進制數的權5.如何區分不同進位記數制的數如何區分不同進位記數制的數字字在數字后面加一個字母進行區分:在數字后面加一個字母進行區分:二進制:數字后面加二進制:數字后面加B, 如如1001B八進制:數字后面加八進制:數字后面加O, 如如1001O十進制:一般不加十進制:一般不加, 如如1001十六進制:數字后面加十六進制:數字后面加H , 如如1001H在明顯可以區分其記數制的情況下,可以省略數在明顯可以區分其記數制的情況下,可以

6、省略數字后面的字母字后面的字母 十進制十進制(D) 二進制二進制(B) 八進制八進制(O,Q) 十六進制十六進制(H) 0 0000 0 0 1 0001 1 1 2 0010 2 2 3 0011 3 3 4 0100 4 4 5 0101 5 5 6 0110 6 6 7 0111 7 7 8 1000 8 9 1001 9 1010 A 1011 B 1100 C 1101 D 1110 E 1111 F 5.如何區分不同進位記數制的數如何區分不同進位記數制的數字字例例n234.98 或或 (234.98)10n1101.11B 或或 (1101.11)2nABCD . BFH 或或 (

7、ABCD . BF)162.1.2各數制間的轉換各數制間的轉換n1.非十進制數到十進制數的轉換:非十進制數到十進制數的轉換: 按相應的按相應的權表達式權表達式展開展開,再按十進制求和。再按十進制求和。n例:例:24.AH=2161+4160+A16-1 =36.625注:注:AF分別用分別用1015代入代入 例:例:10110010B = (?)10 13FAH = (?)102.十進制到非十進制數的轉換十進制到非十進制數的轉換十進制十進制 二進制:二進制: 整數部分:除整數部分:除2取余;小數部分:乘取余;小數部分:乘2取整取整十進制十進制 十六進制:十六進制: 整數部分:除整數部分:除16

8、取余;小數部分:乘取余;小數部分:乘16取整取整以小數點為起點求得整數和小數的每一位以小數點為起點求得整數和小數的每一位。注:十進制轉換成注:十進制轉換成任意任意K進制數進制數與上類似,與上類似, 整數:除整數:除K取余,小數:乘取余,小數:乘K取整。取整。十進制到二進制轉換例十進制到二進制轉換例255 = ( ? )B 2 3 .余數為余數為1=K6 2 127 .余數為余數為1=K1 2 63 .余數為余數為1=K2 2 31 .余數為余數為1=K3 2 15 .余數為余數為1=K4 2 7 .余數為余數為1=K5 2 255 .余數為余數為1=K0 2 1 .余數為余數為1=K7 025

9、5 = (11111111)B(30)10=( 11110 )22| 3 0 0 低位低位 2| 1 5 1 2| 7 1 2| 3 1 2| 1 1 高位高位 0 (266)10 = ( 10 A )16 266/16 = 16 A 低位低位 16/16 = 1 0 1/16 = 0 1 高位高位18(0.8125)10 = ( 0.1101 )2 0.8125 2 1.6250 1 高位高位 0.6250 2 1.2500 1 0.2500 2 0.5000 0 0.5000 2 1.0000 1 低位低位19 2 2 4949 2 2 24 -24 - 1 1 2 2 12 - 12 -

10、 0 0 2 2 6 - 6 - 0 0 2 2 3 - 3 - 0 0 2 2 1 - 1 - 1 1 0 - 0 - 1 1(49.58)10 = ( ? )2110001.整數除以整數除以2倒取余數倒取余數 小數乘小數乘以以2正取整數正取整數 0.580.58 2 21 .161 .16 2 20 .320 .32 2 20 .64 0 .64 100十進制到十六進制轉換例十進制到十六進制轉換例400.25 = ( ? )Hn400/16=25 -余數余數=0(個位)(個位)n25/16=1 -余數余數=9(十位)(十位)n1/16=0 -余數余數=1(百位)(百位)n0.2516=4.

11、0 -整數整數=4(1/10) 即:即:400.25 = 190.4H3.二進制與十六進制間的轉換二進制與十六進制間的轉換n用用4位二進制數表示位二進制數表示1位十六進制數位十六進制數例:例: 10110001001.110 = (?)H 0101 1000 1001.1100 5 8 9 . C 注意:位數不夠時要補注意:位數不夠時要補0n24=16,用,用4位二進制數表示位二進制數表示1位十六進制數位十六進制數 0000 - 0H 1001 - 9H 1010 - AH 1011 - BH 1100 - CH 1101 - DH 1110 - EH 1111 - FH3.二進制與十六進制間

12、的轉換二進制與十六進制間的轉換第二節第二節無符號二進制數的運算無符號二進制數的運算mov ax,12hcall displayJmp 1234h主要內容:主要內容:n2.2.1 無符號數的算術運算無符號數的算術運算n2.2.2 無符號數的表示范圍無符號數的表示范圍n2.2.3 邏輯運算邏輯運算n2.2.4 邏輯門邏輯門n2.2.5 譯碼器譯碼器n2.2.6 由基本門電路實現的部件由基本門電路實現的部件2.2 無符號二進制數的運算無符號二進制數的運算2.2 無符號二進制數的運算無符號二進制數的運算二進制數二進制數算術運算算術運算邏輯運算邏輯運算無符號數無符號數有符號數有符號數:算術運算算術運算2

13、.2.1無符號數的算術運算無符號數的算術運算n加法運算加法運算n減法運算減法運算n乘法運算乘法運算n除法運算除法運算注意事項:注意事項:n對加法:對加法:1+1=0(有進位)(有進位)n對減法:對減法:0-1=1(有借位)(有借位)n對乘法:僅有對乘法:僅有11=1,其余皆為,其余皆為0 0; 乘以乘以2相當于左移一位。相當于左移一位。n對除法:除以對除法:除以2則相當于右移則相當于右移1位。位。例例n000010110100=00101100B n000010110100=00000010B 即:商即:商=00000010B 余數余數=11B2.2.2無符號數的表示范圍無符號數的表示范圍n一

14、個一個n位的無符號二進制數位的無符號二進制數X,其表示范圍為:,其表示范圍為: 0 X 2n-1 若運算結果超出這個范圍,則產生溢出。若運算結果超出這個范圍,則產生溢出。n溢出的溢出的判別方法:判別方法: 運算時,當最高位向更高位有進位(或借位)運算時,當最高位向更高位有進位(或借位)時則產生溢出時則產生溢出。例例: 1111111111111111 + 00000001 + 00000001 1 1 0000000000000000結果超出位(最高位有進位),發生溢出。結果超出位(最高位有進位),發生溢出。(結果為(結果為256256,超出位二進制數所能表示的范圍,超出位二進制數所能表示的范

15、圍255255) 2.2.3邏輯運算邏輯運算與(與()或(或()非(非()異或(異或()掌握:邏輯關系(真值表)和邏輯門。掌握:邏輯關系(真值表)和邏輯門。例:例:A=10110110, B=01101011求:求:AB, AB, A B 特點:按位運算,無進位特點:按位運算,無進位/借位。借位。“與與”、“或或”運算運算n任何數和任何數和“0”相相“與與”,結果為,結果為0n任何數和任何數和“1”相相“或或”,結果為,結果為1BACABC&1AB=CAB=C“非非”、“異或異或”運算運算n“非非”運算即按位求反運算即按位求反n兩個二進制數相兩個二進制數相“異或異或”: 相同則為相同則

16、為0,相異則為,相異則為1AABC1 B=AA B=CB“與非與非”、“或非或非”運算運算AB=C AB=CBACABC&12.2.4邏輯門邏輯門 基本的邏輯門是基本的邏輯門是與、或、非與、或、非門,一個復雜的邏門,一個復雜的邏輯電路是由這些基本邏輯門連接成的。輯電路是由這些基本邏輯門連接成的。 門電路是邏輯關系的基本硬件單元。按制作工門電路是邏輯關系的基本硬件單元。按制作工藝的不同,可分為藝的不同,可分為雙極型雙極型邏輯門和邏輯門和MOS型型邏輯門。邏輯門。 兩種工藝的代表類型為:兩種工藝的代表類型為:TTL集成邏輯門集成邏輯門和和CMOS邏輯門。邏輯門。1.與門(與門(AND Ga

17、te)Y = ABABY000010100111&ABY注:基本門電路僅完成注:基本門電路僅完成1位二進制數的運算位二進制數的運算ABY2.或門(或門(OR Gate)Y = ABABY000011101111YAB1 13.非門(非門(NOT Gate)1AYY = AAY01101AYAY4.異或門(異或門(eXclusive OR Gate)Y = ABYABABY0000111011105.與非門(與非門(NAND Gate)ABY001011101110Y = A B YAB&6.或非門(或非門(NOR Gate)ABY001010100110Y = A B YAB1

18、 74LSXX系列系列是最常用的一種是最常用的一種TTL門電路門電路,性能價格比也比較高。如性能價格比也比較高。如74LS00為四二輸入與為四二輸入與門、門、 74LS32為四二輸入或門,為四二輸入或門, 74LS86為四二為四二輸入異或門等。通過基本的與或非門電路可以設輸入異或門等。通過基本的與或非門電路可以設計出需要的各種復雜功能的電路,如計出需要的各種復雜功能的電路,如加法器、加法器、譯譯碼器碼器、數值比較器、數據選擇器、奇偶檢驗、數值比較器、數據選擇器、奇偶檢驗/產產生電路、編碼器等生電路、編碼器等。2.2.5譯碼器譯碼器(常用邏輯部件常用邏輯部件)2.2.5譯碼器譯碼器n例:設計的例

19、:設計的74LS138譯碼器:譯碼器:G1G2AG2BCBAY0Y7 38譯碼器原理譯碼器原理譯碼使能端譯碼使能端譯碼輸入端譯碼輸入端譯碼輸出端譯碼輸出端74LS138真值表真值表使使 能能 端端輸輸 入入 端端輸輸 出出 端端G1 G2A G2B C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 0 1 1 0 1 1 0 1 0 01 0 01 0 01 0 01 0 01 0 01 0 01 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

20、1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 第三節第三節符號數的表示及運算符號數的表示及運算mov ax,12hcall displayJmp 1234h主要內容:主要內容:n2.3.1 符號數的表示符號數的表示n2.3.2 有符號二進制數與十進制的轉換有符號二進制數與十進制的轉換n2.3.3 符號數的算術運算符號數的算術運算n2.3.4 符

21、號數運算中的溢出問題符號數運算中的溢出問題2.3 符號數的表示及運算符號數的表示及運算2.3 符號數的表示及運算符號數的表示及運算計算機中的符號數的表示方法:計算機中的符號數的表示方法: 把二進制數的最高位定義為符號位把二進制數的最高位定義為符號位。 符號位:符號位:“0” 表示正數,表示正數, “1” 表示負數表示負數。n把符號也數值化了的數,稱為把符號也數值化了的數,稱為機器數機器數。n機器數所表示的真實的數值,稱為機器數所表示的真實的數值,稱為真值真值。注:后面的講述均以注:后面的講述均以8位二進制數為例。位二進制數為例。例例: +52 = +0110100 0 0110100 符號位符

22、號位數值位數值位 -52 = -0110100 1 0110100 真值真值機器數機器數2.3.1符號數的表示符號數的表示n對于符號數,機器數常用的表示方法有對于符號數,機器數常用的表示方法有原碼原碼、反碼反碼和和補碼補碼三種。數三種。數X的原碼記作的原碼記作X原原,反碼,反碼記作記作X反反,補碼記作,補碼記作X補補。注意:對正數,三種表示法均相同。注意:對正數,三種表示法均相同。 它們的它們的差別在于對負數的表示差別在于對負數的表示。1.原碼原碼X原原n最高位為符號位,用最高位為符號位,用“0”表示正,用表示正,用“1”表示負;數表示負;數值部分照原樣寫出即可。值部分照原樣寫出即可。n優點優

23、點: 真值和其原碼表示之間的對應關真值和其原碼表示之間的對應關 系簡單,容易理解;系簡單,容易理解;n缺點缺點: 計算機中用原碼進行加減運算比計算機中用原碼進行加減運算比 較困難,較困難,0的表示不唯一的表示不唯一。正式定義為:正式定義為:11122200-nnnXXXXX 原原碼的例子原碼的例子真值真值 X=+18=+0010010X=-18=-0010010原碼原碼 X原原 =0 0010010X原原 =1 0010010符號符號符號位符號位n位原碼表示數值的范圍是位原碼表示數值的范圍是對應的原碼是對應的原碼是1111 () ()112121nn 8/16位符號數的表示范圍位符號數的表示范

24、圍對對8位二進制數:位二進制數:n原碼:原碼: -127 +127對對16位二進制數:位二進制數:n原碼:原碼: -32767 +32767數數0的原碼的原碼n8位數位數0的原碼:的原碼: +0=0 0000000 -0=1 0000000 即:數即:數0的原碼不唯一。的原碼不唯一。2.反碼反碼X反反對一個數對一個數X:n若若X0 ,則,則 X反反=X原原n若若X0, 則則X補補= X反反= X原原n若若X0, 則則X補補= X反反+1正式定義為:正式定義為: 11222- nnnXXX 例例nX= 52= 0110100 X原原=10110100 X反反=11001011 X補補= X反反+

25、1=11001100n位補碼表示數值的范圍是位補碼表示數值的范圍是對應的補碼是對應的補碼是1000 0111 ()11221nn8/16位帶符號數的表示范圍位帶符號數的表示范圍對對8位二進制數:位二進制數:n補碼:補碼: -128 +127對對16位二進制數:位二進制數:n補碼:補碼: -32768 +327670的補碼的補碼n+0補補= +0原原=00000000n- 0補補= -0反反+1=11111111+1 =1 00000000 +0補補= -0補補= 00000000 對對8位字長,進位被舍掉位字長,進位被舍掉特殊數特殊數10000000n該數在原碼中定義為:該數在原碼中定義為:-

26、0n在反碼中定義為:在反碼中定義為: -127n在補碼中定義為:在補碼中定義為: -128n對無符號數,(對無符號數,(10000000)2=1284. 8/16位符號數的表示范圍位符號數的表示范圍對對8位二進制數:位二進制數:n原碼:原碼: -127 +127n反碼:反碼: -127 +127n補碼:補碼: -128 +127對對16位二進制數:位二進制數:n原碼:原碼: -32767 +32767n反碼:反碼: -32767 +32767n補碼:補碼: -32768 +327672.3.2有符號二進制數與十進制的轉有符號二進制數與十進制的轉換換對用補碼表示的二進制數:對用補碼表示的二進制數

27、: 1)求出真值)求出真值 2)進行轉換)進行轉換例例將一個用補碼表示的二進制數轉換為十進制數。將一個用補碼表示的二進制數轉換為十進制數。nX補補=0 0101110B 真值為:真值為:0101110B 正數正數 所以:所以:X=+46nX補補=1 1010010B 真值不等于真值不等于:-1010010B 負數負數 而是:而是:X= X補補補補= 11010010補補 = - 0101110B = - 46n通過使用通過使用反碼反碼,可將求補碼公式中的減法也,可將求補碼公式中的減法也省略掉,最終實現避免減法運算。省略掉,最終實現避免減法運算。n規則如下:規則如下:2.3.3符號數的算術運算符

28、號數的算術運算2.3.3符號數的算術運算符號數的算術運算n采用補碼作加法時,遵循以下原則:采用補碼作加法時,遵循以下原則: 要把符號位當作數據一同參與運算;要把符號位當作數據一同參與運算; 符號位相加后,若有進位存在,則把進位符號位相加后,若有進位存在,則把進位舍去舍去2.3.3符號數的算術運算符號數的算術運算n通過引進通過引進補碼補碼,可將減法運算轉換為加法運算。,可將減法運算轉換為加法運算。n規則如下:規則如下:X+Y補補= X補補+Y補補 X-Y補補= X+(-Y)補補 = X補補+-Y補補其中其中X,Y為正負數均可,符號位參與運算為正負數均可,符號位參與運算。補碼的運算原理補碼的運算原

29、理 模模(module)就是一個計數系統的最大容量就是一個計數系統的最大容量。例如,鐘例如,鐘表的模為表的模為12,8位二進制數的模為位二進制數的模為28。 凡是用器件進行的運算都是有模運算凡是用器件進行的運算都是有模運算,運算結果超過運算結果超過模的部分模的部分會被運算器會被運算器自動丟棄自動丟棄。因此,當。因此,當器件為器件為n位時,有位時,有 X=2n+X (mod 2n)不難驗證,不難驗證, X補補=2n+X (mod 2n)因此,因此, X Y補補= 2n + (X Y) (mod 2n) = (2n+X) + (2n Y) (mod 2n) = X補補+ Y補補例例X=-01101

30、00,Y=+1110100,求求X+Y補補=?nX原原=10110100 nX補補= X反反+1=11001100nY補補= Y原原=01110100n所以:所以: X+Y補補= X補補+ Y補補 =11001100+01110100 =01000000 X+Y=+1000000n進進(借借)位位n在加法過程中,符號位向更高位產生進位;在加法過程中,符號位向更高位產生進位;n在減法過程中,符號位向更高位產生借位。在減法過程中,符號位向更高位產生借位。n溢出溢出n運算結果超出運算器所能表示的范圍。運算結果超出運算器所能表示的范圍。n有符號數運算,有有符號數運算,有溢出溢出表示結果是錯誤的表示結果

31、是錯誤的n無符號數運算,有無符號數運算,有進進(借借)位表示結果是錯誤的位表示結果是錯誤的2.3.4符號數運算中的溢出問題符號數運算中的溢出問題溢出的判斷方法溢出的判斷方法n方法:方法:n同號相減或異號相加同號相減或異號相加不會溢出。不會溢出。n同號相加或異號相減同號相加或異號相減可能溢出:可能溢出:n兩種情況:兩種情況:n同號相加時,結果符號與加數符號相反同號相加時,結果符號與加數符號相反溢出;溢出;n異號相減時,結果符號與減數符號相同異號相減時,結果符號與減數符號相同溢出。溢出。n方法:方法:n兩個兩個8位帶符號二進制數相加或相減時,若位帶符號二進制數相加或相減時,若 C7 C61, 則結

32、果產生溢出。則結果產生溢出。 C7為最高位的進為最高位的進(借借)位;位; C為次高位的進為次高位的進(借借)位。位。溢出的判斷方法溢出的判斷方法觀察以下四種情況哪個溢出?觀察以下四種情況哪個溢出? 1 0 1 1 0 1 0 1 + + 1 0 0 0 1 1 1 1 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 + + 0 1 1 0 0 0 1 1 1 0 1 0 0 1 0 1 0 1 0 0 0 0 1 0 + + 1 1 0 0 1 1 0 1 1 0 0 0 0 1 1 1 1CASE1:CASE2:CASE3:假定以下運算都是有符號數的運算。假定以下運算都

33、是有符號數的運算。 0 0 1 0 0 0 1 0 + + 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1CASE4:無符號數:錯誤!無符號數:錯誤!有符號數:錯誤!有符號數:錯誤!無符號數:正確!無符號數:正確!有符號數:錯誤!有符號數:錯誤!無符號數:錯誤!無符號數:錯誤!有符號數:正確!有符號數:正確!例:例:n若:若:X=01111000, Y=01101001 則:則:X+Y=即:即:次高位向最高位有進位,而最高位向前無次高位向最高位有進位,而最高位向前無 進位,產生溢出。進位,產生溢出。 ( (事實上,兩正數相加得出負數,結果出錯事實上,兩正數相加得出負數,結果出錯

34、) )11100001 01101001 01111000 第四節第四節定點數與浮點數定點數與浮點數mov ax,12hcall displayJmp 1234h2.4 定點數與浮點數定點數與浮點數在計算機中,用二進制表示實數的方法有兩種:在計算機中,用二進制表示實數的方法有兩種:n定點法定點法n浮點法浮點法定點數定點數n定點數:小數點位置固定不變的數。定點數:小數點位置固定不變的數。n小數點的位置:小數點的位置:n純小數純小數n純整數純整數符號符號X1X2Xn小數點位置小數點位置符號符號X1X2Xn小數點位置小數點位置浮點數浮點數n浮點數來源于科學記數法浮點數來源于科學記數法n例如:例如:+

35、123.5=+0.123103 -0.001235=-0.12310-2n浮點數:用階碼和尾數表示的數,尾數通常為浮點數:用階碼和尾數表示的數,尾數通常為純小數。純小數。 2EF數符數符階階E階符階符尾數尾數F小數點位置小數點位置階碼階碼80 x86中使用的中使用的IEEE標準浮點數標準浮點數n單精度浮點數(階碼偏移單精度浮點數(階碼偏移7FH)n雙精度浮點數(階碼偏移雙精度浮點數(階碼偏移3FFH)數符數符階階E(11位位)尾數尾數F(52位位) ,整數部分默認為,整數部分默認為1小數點位置小數點位置數符數符階階E(8位位)尾數尾數F(23位位),整數部分默認為,整數部分默認為1小數點位置小

36、數點位置 31 30 23 22 0 63 62 52 51 0例:例:n將將1011.10101用用8位階碼、位階碼、15位尾數的規格位尾數的規格化浮點數形式表示。化浮點數形式表示。解:因為解:因為1011.101010.10111010124 所以要求的浮點數為:所以要求的浮點數為:00000100101 1101 0100 00000階碼階碼階符階符數符數符尾數(后補尾數(后補0到到15位)位)n用用IEEE標準單精度浮點數重做上題。標準單精度浮點數重做上題。因為因為1011.101011.0111010123, 階為階為7FH+3=82H=10000010B所以要求的浮點數為:所以要求

37、的浮點數為: 010000010011 1010 1000 0000 0000 0000例:例:浮點數的表示浮點數的表示例例. 寫出寫出178.125以單精度浮點數形式存放的機器數以單精度浮點數形式存放的機器數解解:178.125(D) = 10110010.001(B) 表示成規格化的浮點數為表示成規格化的浮點數為1.0110010001 27 23位有效數字字段為位有效數字字段為 01100100010000000000000 真階碼為真階碼為111 偏置階碼為偏置階碼為1111111+111=10000110 符號位為符號位為0 178.125的的單精度浮點機器數單精度浮點機器數為為 0

38、1000011001100100010000000000000 表示成十六進制為表示成十六進制為43322000(H)第五節第五節計算機中的編碼計算機中的編碼mov ax,12hcall displayJmp 1234h主要內容:主要內容:n2.5.1 BCD碼碼n2.5.2 ASCII碼碼n2.5.3 漢字編碼漢字編碼2.5 計算機中的編碼計算機中的編碼2.5 計算機中的編碼計算機中的編碼 非數值數據在計算機中必須以二進制形式非數值數據在計算機中必須以二進制形式表示,非數值數據的表示本質上是編碼的過程。表示,非數值數據的表示本質上是編碼的過程。常用的二種:常用的二種:lBCD碼碼l用二進制編

39、碼的十進制數用二進制編碼的十進制數lASCII碼碼l美國標準信息交換代碼美國標準信息交換代碼2.5.1 BCD碼碼n用用4位二進制數表示一位十進制數。有位二進制數表示一位十進制數。有兩種表示法:兩種表示法:n 壓縮壓縮BCD碼碼n 非壓縮非壓縮BCD碼碼2.5.1 BCD碼碼n壓縮壓縮BCD碼碼n每一位用每一位用4位二進制表示,位二進制表示, 00001001表表示示09,一個字節表示兩位十進制數。,一個字節表示兩位十進制數。 n如:如:92D,轉換為,轉換為BCD碼為碼為 10010010B,存儲在一個字節,內容為:存儲在一個字節,內容為:10010010。2.5.1 BCD碼碼n非壓縮非壓

40、縮BCD碼碼n用用一個字節表示一位十進制數,高用用一個字節表示一位十進制數,高4位總位總是是0000,低,低4位的位的00001001表示表示09。n如:如:92D,轉換為,轉換為BCD碼為碼為 10010010B,存儲在兩個字節,內容分別為:存儲在兩個字節,內容分別為:00001001,00000010。BCD碼與二進制數之間的轉換碼與二進制數之間的轉換n先轉換為十進制數,再轉換二進制數;反先轉換為十進制數,再轉換二進制數;反之同樣。之同樣。n例例: (0001 0001 .0010 0101)BCD = 11 .25 = 1011 .01Bn采用采用7位位二進制代碼對字符進行編碼。二進制代

41、碼對字符進行編碼。n英文字母英文字母AZ的的ASCII碼從碼從1000001(41H)開)開始順序遞增;字母始順序遞增;字母az的的ASCII碼從碼從1100001(61H)開始順序遞增,這樣的排列對信息檢索)開始順序遞增,這樣的排列對信息檢索十分有利。十分有利。n數字數字09的編碼是的編碼是01100000111001( 30H 39H),),規律:規律:高高3位:位:011;后;后4位:二進制代位:二進制代碼(碼(BCD碼)。碼)。n最高位最高位通常總為通常總為0,有時也用作,有時也用作奇偶校驗位奇偶校驗位。2.5.2 ASCII碼碼ASCII碼的校驗碼的校驗n奇校驗奇校驗 加上校驗位后編

42、碼中加上校驗位后編碼中“1”的個數為奇數。的個數為奇數。 例:例:A的的ASCII碼是碼是41H(1000001B),), 以奇校驗傳送則為以奇校驗傳送則為C1H(11000001B)n偶校驗偶校驗 加上校驗位后編碼中加上校驗位后編碼中“1”的個數為偶數。的個數為偶數。 上例若以偶校驗傳送,則為上例若以偶校驗傳送,則為41H。2.5.2 ASCII碼n用用8位二進制數表示位二進制數表示時,最高位總為時,最高位總為0,因此最高位(因此最高位(D7位)位)可作為奇偶校驗位。可作為奇偶校驗位。n熟悉熟悉16進制數進制數0-F的的ASCII碼:碼:n30H-39H,n41H-46HASCII碼碼美國標

43、準信息交換代碼美國標準信息交換代碼 漢字編碼包括輸入編碼、內碼和字型編碼漢字編碼包括輸入編碼、內碼和字型編碼,分別用于輸入、內部處理和輸出。,分別用于輸入、內部處理和輸出。 漢字的漢字的輸入編碼輸入編碼是為了使用西文標準鍵盤是為了使用西文標準鍵盤把把 漢字輸入到計算機中,其編碼方法主要有漢字輸入到計算機中,其編碼方法主要有數數字編碼字編碼、拼音碼拼音碼和和字形編碼字形編碼三類。三類。 除了鍵盤輸入以外,利用語音或圖象識別除了鍵盤輸入以外,利用語音或圖象識別技術自動將漢字輸入到計算機內的方法也已經技術自動將漢字輸入到計算機內的方法也已經實現實現2.5.3漢字編碼漢字編碼漢字字型編碼漢字字型編碼是

44、用來描述漢字是用來描述漢字字形的代碼,它字形的代碼,它是漢字的輸出形是漢字的輸出形式。漢字庫有點式。漢字庫有點陣字庫、陣字庫、TrueType字庫、字庫、矢量字庫等類型矢量字庫等類型2.5.3漢字編碼漢字編碼漢字內碼漢字內碼是用于漢字信息的存儲、交換、檢索等是用于漢字信息的存儲、交換、檢索等操作的機內代碼,它采用兩個字節的二進制形式表操作的機內代碼,它采用兩個字節的二進制形式表示一個漢字。為了與英文字符能相互區別,漢字機示一個漢字。為了與英文字符能相互區別,漢字機內代碼中兩個字節的最高位均規定為內代碼中兩個字節的最高位均規定為l。 例如:例如:漢漢(BABA)字字(D6D7)編編(E0B1)碼碼(EBC2)漢字字型編碼漢字字型編碼是用來描述漢字字形的代碼,它是是用來描述漢字字形的代碼,它是漢字的輸出形式。漢字的輸出形式。漢字庫有點陣字庫、漢字庫有點陣字庫、TrueType字庫、矢量字庫等字庫、矢量字庫等類型類型2.5.3漢字編碼漢字編碼結束語結束語掌握:掌握:n掌握原碼、反碼、和補碼的定義、求法,掌握掌握原碼、反碼、和補碼的定義、求法,掌握補碼運算的特點和基本

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論