計算機(jī)組成原理_數(shù)據(jù)的機(jī)器層次表示_第1頁
計算機(jī)組成原理_數(shù)據(jù)的機(jī)器層次表示_第2頁
計算機(jī)組成原理_數(shù)據(jù)的機(jī)器層次表示_第3頁
計算機(jī)組成原理_數(shù)據(jù)的機(jī)器層次表示_第4頁
計算機(jī)組成原理_數(shù)據(jù)的機(jī)器層次表示_第5頁
已閱讀5頁,還剩130頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、西華師范大學(xué)西華師范大學(xué) 1 第第2章章 數(shù)據(jù)的機(jī)器層次表示數(shù)據(jù)的機(jī)器層次表示 數(shù)據(jù)是計算機(jī)加工和處理的對象,數(shù)數(shù)據(jù)是計算機(jī)加工和處理的對象,數(shù) 據(jù)的機(jī)器層次表示將直接影響到計算機(jī)據(jù)的機(jī)器層次表示將直接影響到計算機(jī) 的結(jié)構(gòu)和性能。本章主要介紹無符號數(shù)的結(jié)構(gòu)和性能。本章主要介紹無符號數(shù) 和帶符號數(shù)的表示方法、數(shù)的定點(diǎn)與浮和帶符號數(shù)的表示方法、數(shù)的定點(diǎn)與浮 點(diǎn)表示方法、字符和漢字的編碼方法、點(diǎn)表示方法、字符和漢字的編碼方法、 數(shù)據(jù)校驗碼等。熟悉和掌握本章的內(nèi)容,數(shù)據(jù)校驗碼等。熟悉和掌握本章的內(nèi)容, 是學(xué)習(xí)計算機(jī)原理的最基本要求。是學(xué)習(xí)計算機(jī)原理的最基本要求。 西華師范大學(xué)西華師范大學(xué) 本章學(xué)習(xí)內(nèi)容

2、本章學(xué)習(xí)內(nèi)容 2.1 2.1 數(shù)值數(shù)據(jù)的表示數(shù)值數(shù)據(jù)的表示 2.2 2.2 機(jī)器數(shù)的定點(diǎn)表示和浮點(diǎn)表示機(jī)器數(shù)的定點(diǎn)表示和浮點(diǎn)表示 2.3 2.3 非數(shù)值數(shù)據(jù)的表示非數(shù)值數(shù)據(jù)的表示 2.4 2.4 十進(jìn)制數(shù)和數(shù)串的表示十進(jìn)制數(shù)和數(shù)串的表示 2.5 2.5 不同類型的數(shù)據(jù)表示舉例不同類型的數(shù)據(jù)表示舉例 2.6 2.6 數(shù)據(jù)校驗碼數(shù)據(jù)校驗碼 2 西華師范大學(xué)西華師范大學(xué) 本章學(xué)習(xí)要求本章學(xué)習(xí)要求 了解:了解:無符號數(shù)與帶符號數(shù),真值和機(jī)器數(shù)等概念無符號數(shù)與帶符號數(shù),真值和機(jī)器數(shù)等概念 掌握:原碼、補(bǔ)碼、反碼表示法以及三種碼制與真掌握:原碼、補(bǔ)碼、反碼表示法以及三種碼制與真 值之間的轉(zhuǎn)換方法值之間的轉(zhuǎn)

3、換方法 掌握:定點(diǎn)數(shù)和浮點(diǎn)數(shù)的表示范圍掌握:定點(diǎn)數(shù)和浮點(diǎn)數(shù)的表示范圍 理解:浮點(diǎn)數(shù)階碼的移碼理解:浮點(diǎn)數(shù)階碼的移碼 了解了解:IEEE754IEEE754浮點(diǎn)數(shù)標(biāo)準(zhǔn)浮點(diǎn)數(shù)標(biāo)準(zhǔn) 掌握:常見的字符編碼方法(掌握:常見的字符編碼方法(ASCIIASCII碼)、漢字國標(biāo)碼)、漢字國標(biāo) 碼、區(qū)位碼、機(jī)內(nèi)碼碼、區(qū)位碼、機(jī)內(nèi)碼 掌握:掌握:82418241碼、碼、24212421碼和余碼和余3 3碼碼 掌握:奇偶校驗位及其形成方法掌握:奇偶校驗位及其形成方法 了解:海明校驗碼和循環(huán)冗余校驗碼了解:海明校驗碼和循環(huán)冗余校驗碼 3 西華師范大學(xué)西華師范大學(xué) 2021-6-214 1. 1.各種信息在計算機(jī)用數(shù)字

4、代碼表示。各種信息在計算機(jī)用數(shù)字代碼表示。 2. 2.用數(shù)字型電信號表示數(shù)字代碼。用數(shù)字型電信號表示數(shù)字代碼。 信息的數(shù)字化表示信息的數(shù)字化表示 西華師范大學(xué)西華師范大學(xué) 2021-6-215 比如:比如: 1.學(xué)生的學(xué)號,在沒有計算機(jī)的時代管學(xué)生的學(xué)號,在沒有計算機(jī)的時代管 理人員為了管理方便,就會把學(xué)生進(jìn)行編理人員為了管理方便,就會把學(xué)生進(jìn)行編 制學(xué)號。把人抽象為數(shù)字。制學(xué)號。把人抽象為數(shù)字。 2.平面與立體空間。人們?yōu)榱嗣枋鍪挛镌诳掌矫媾c立體空間。人們?yōu)榱嗣枋鍪挛镌诳?間中的位置,人們將空間進(jìn)行了數(shù)字化,間中的位置,人們將空間進(jìn)行了數(shù)字化, 這就是坐標(biāo)。這就是坐標(biāo)。 上述人們進(jìn)行的編碼,

5、不管有意無意,上述人們進(jìn)行的編碼,不管有意無意, 都屬于都屬于“數(shù)字化數(shù)字化”的范疇。的范疇。 西華師范大學(xué)西華師范大學(xué) 2021-6-216 用數(shù)字組成的代碼(二進(jìn)制代碼)用數(shù)字組成的代碼(二進(jìn)制代碼) 例例1 用數(shù)字代碼表示數(shù)值型數(shù)據(jù)用數(shù)字代碼表示數(shù)值型數(shù)據(jù) 5 - 5 表示為表示為 0 101 表示為表示為 1 101 1. 在計算機(jī)中用在計算機(jī)中用數(shù)字代碼數(shù)字代碼表示各種信息表示各種信息 西華師范大學(xué)西華師范大學(xué) 2021-6-217 例例2 用數(shù)字代碼表示字符用數(shù)字代碼表示字符 A B 表示為表示為 1000001 表示為表示為 1000010 例例3 用數(shù)字代碼表示圖像用數(shù)字代碼表

6、示圖像 西華師范大學(xué)西華師范大學(xué) 2021-6-21 例例4 用數(shù)字代碼表示機(jī)器指令用數(shù)字代碼表示機(jī)器指令 加法加法 從寄存器從寄存器取數(shù)取數(shù) 結(jié)果結(jié)果存入存入存儲器存儲器 0001 000 001 例例5 用數(shù)字代碼表示命令、狀態(tài)用數(shù)字代碼表示命令、狀態(tài) 啟動啟動 停止停止 正在工作正在工作 工作結(jié)束工作結(jié)束 表示為表示為 00 表示為表示為 01 表示為表示為 10 表示為表示為 11 西華師范大學(xué)西華師范大學(xué) 2021-6-21 計算機(jī)內(nèi)部流動的電信號很單純計算機(jī)內(nèi)部流動的電信號很單純( (二進(jìn)制特點(diǎn)二進(jìn)制特點(diǎn) ) ),它不象無線電波或水波那樣連綿不絕、大小不,它不象無線電波或水波那樣連

7、綿不絕、大小不 一。在計算機(jī)內(nèi)部的電信號如果測量一下的話,在一。在計算機(jī)內(nèi)部的電信號如果測量一下的話,在 不同的時間內(nèi),它要么是最大值不同的時間內(nèi),它要么是最大值 、要么是最小值、要么是最小值 (高電平和低電平),這好像我們猜一枚硬幣的正(高電平和低電平),這好像我們猜一枚硬幣的正 反面一樣,不是正就是反。而與水波類似的正弦波反面一樣,不是正就是反。而與水波類似的正弦波 在一點(diǎn)測量的話,它的值可能在最大值與最小值之在一點(diǎn)測量的話,它的值可能在最大值與最小值之 間的任何一個數(shù)字上。就像一艘漂在海上的小木船間的任何一個數(shù)字上。就像一艘漂在海上的小木船 上,木船不停地隨著波浪上上下下。如果讓您猜一上

8、,木船不停地隨著波浪上上下下。如果讓您猜一 下木船現(xiàn)在的非常精確的海拔高度,您會那么有把下木船現(xiàn)在的非常精確的海拔高度,您會那么有把 握嗎?握嗎? 9 西華師范大學(xué)西華師范大學(xué) 2021-6-2110 2. 在物理機(jī)制上用數(shù)字信號表示數(shù)字代碼在物理機(jī)制上用數(shù)字信號表示數(shù)字代碼 數(shù)字型電信號數(shù)字型電信號 例例1 用電平信號表示數(shù)字代碼用電平信號表示數(shù)字代碼 高電平高電平 1 低電平低電平 高電平高電平 0 1 例例2 用脈沖信號表示數(shù)字代碼用脈沖信號表示數(shù)字代碼 有脈沖有脈沖無脈沖無脈沖 有脈沖有脈沖 101 實現(xiàn)實現(xiàn)并行并行操作操作 實現(xiàn)實現(xiàn)串行串行操作操作 +5V 0V +5V 西華師范大學(xué)

9、西華師范大學(xué) 2.1 數(shù)值數(shù)據(jù)的表示數(shù)值數(shù)據(jù)的表示 在計算機(jī)中,采用數(shù)字化方式來表示數(shù)在計算機(jī)中,采用數(shù)字化方式來表示數(shù) 據(jù),數(shù)據(jù)有無符號數(shù)和帶符號數(shù)之分,其據(jù),數(shù)據(jù)有無符號數(shù)和帶符號數(shù)之分,其 中帶符號數(shù)根據(jù)其編碼的不同又有原碼、中帶符號數(shù)根據(jù)其編碼的不同又有原碼、 補(bǔ)碼和反碼補(bǔ)碼和反碼3 3種形式。種形式。 11 西華師范大學(xué)西華師范大學(xué) 2.1.1 計算機(jī)中的數(shù)值數(shù)據(jù)計算機(jī)中的數(shù)值數(shù)據(jù) 二進(jìn)制數(shù):后綴二進(jìn)制數(shù):后綴B B 八進(jìn)制數(shù):后綴八進(jìn)制數(shù):后綴Q Q 十進(jìn)制數(shù):后綴十進(jìn)制數(shù):后綴D D或省略后綴或省略后綴 十六進(jìn)制數(shù):后綴十六進(jìn)制數(shù):后綴H H 12 西華師范大學(xué)西華師范大學(xué) 數(shù)制

10、轉(zhuǎn)換原則: 兩個有理數(shù)相等兩個有理數(shù)相等= 這兩個有理數(shù)的整數(shù)部分、小數(shù)部這兩個有理數(shù)的整數(shù)部分、小數(shù)部 分分別相等,分分別相等, 因此,因此, 2021-6-2113 整數(shù)部分、小數(shù)部分分別進(jìn)行轉(zhuǎn)換整數(shù)部分、小數(shù)部分分別進(jìn)行轉(zhuǎn)換 西華師范大學(xué)西華師范大學(xué) 1. 任意進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù) 方法:方法:按權(quán)相加按權(quán)相加。即利用按位展開公式將。即利用按位展開公式將 系數(shù)與位權(quán)值相乘后求和。系數(shù)與位權(quán)值相乘后求和。 例例1. 1. 2021-6-2114 西華師范大學(xué)西華師范大學(xué) 2.十進(jìn)制數(shù)轉(zhuǎn)換為任意進(jìn)制數(shù) 整數(shù)部分:除基取余整數(shù)部分:除基取余 把被轉(zhuǎn)換的十進(jìn)制整數(shù)除以基數(shù)把被轉(zhuǎn)換的十進(jìn)制整數(shù)除以

11、基數(shù)R R,取其余數(shù)即為,取其余數(shù)即為R R進(jìn)進(jìn) 制整數(shù)的制整數(shù)的最低位最低位的數(shù)字。的數(shù)字。 再用基數(shù)再用基數(shù)R R去除前次所得的商,所得余數(shù)即為去除前次所得的商,所得余數(shù)即為R R進(jìn)制整進(jìn)制整 數(shù)相應(yīng)位的數(shù)字。數(shù)相應(yīng)位的數(shù)字。 重復(fù),直到商為重復(fù),直到商為0 0為止。為止。 小數(shù)部分:乘基取整小數(shù)部分:乘基取整 把被轉(zhuǎn)換的十進(jìn)制小數(shù)乘以基數(shù)把被轉(zhuǎn)換的十進(jìn)制小數(shù)乘以基數(shù)R R,取乘積的整數(shù)部,取乘積的整數(shù)部 分作為分作為R R進(jìn)制小數(shù)的進(jìn)制小數(shù)的最高位最高位的數(shù)字。的數(shù)字。 再用基數(shù)再用基數(shù)R R乘前一步乘積的小數(shù)部分,取新的乘積的乘前一步乘積的小數(shù)部分,取新的乘積的 整數(shù)部分為整數(shù)部分為R

12、 R進(jìn)制小數(shù)相應(yīng)位的數(shù)字。進(jìn)制小數(shù)相應(yīng)位的數(shù)字。 重復(fù),直到乘積的小數(shù)部分為重復(fù),直到乘積的小數(shù)部分為0,0,或求得所要求的位或求得所要求的位 數(shù)為止。數(shù)為止。 2021-6-2115 西華師范大學(xué)西華師范大學(xué) 3. 二、八、十六進(jìn)制數(shù)之間的轉(zhuǎn)換 因為因為16162 24 4,8 82 23 3 二轉(zhuǎn)八:從小數(shù)點(diǎn)向左右二轉(zhuǎn)八:從小數(shù)點(diǎn)向左右, ,三位一分組。三位一分組。 (10 011 101.0110 011 101.01)B =(235.2)QB =(235.2)Q 二轉(zhuǎn)十六:從小數(shù)點(diǎn)向左右,四位一分組。二轉(zhuǎn)十六:從小數(shù)點(diǎn)向左右,四位一分組。 (101 0111 1001. 01)B =(

13、579.4)H(101 0111 1001. 01)B =(579.4)H 說明:進(jìn)行轉(zhuǎn)換時:說明:進(jìn)行轉(zhuǎn)換時: 整數(shù)位數(shù)不足,不影響轉(zhuǎn)換結(jié)果。整數(shù)位數(shù)不足,不影響轉(zhuǎn)換結(jié)果。 小數(shù)位數(shù)不足,必須補(bǔ)足再轉(zhuǎn)換,否則出錯。小數(shù)位數(shù)不足,必須補(bǔ)足再轉(zhuǎn)換,否則出錯。 2021-6-2116 西華師范大學(xué)西華師范大學(xué) 2.1.2 無符號數(shù)和帶符號數(shù) 無符號數(shù),就是整個機(jī)器字長的全部無符號數(shù),就是整個機(jī)器字長的全部 二進(jìn)制位均表示數(shù)值位(沒有符號位),二進(jìn)制位均表示數(shù)值位(沒有符號位), 相當(dāng)于數(shù)的絕對值。例如:相當(dāng)于數(shù)的絕對值。例如: N N1 1=01001 =01001 表示無符號數(shù)表示無符號數(shù)9 9

14、 N N2 2=11001 =11001 表示無符號數(shù)表示無符號數(shù)2525 機(jī)器字長為機(jī)器字長為n+1n+1位的無符號數(shù)的表示位的無符號數(shù)的表示 范圍是范圍是0 0(2(2n+1 n+1-1) -1),此時二進(jìn)制的最高位此時二進(jìn)制的最高位 也是數(shù)值位,其權(quán)值等于也是數(shù)值位,其權(quán)值等于2 2n n。若字長為若字長為8 8 位,則數(shù)的表示范圍為位,則數(shù)的表示范圍為0 0255255。 17 西華師范大學(xué)西華師范大學(xué) 2.1.2 無符號數(shù)和帶符號數(shù)(續(xù)) 帶符號數(shù),即正、負(fù)數(shù)。在日常生活帶符號數(shù),即正、負(fù)數(shù)。在日常生活 中,我們用中,我們用“+”“+”、“-”“-”號加絕對值來號加絕對值來 表示數(shù)值

15、的大小,用這種形式表示的數(shù)表示數(shù)值的大小,用這種形式表示的數(shù) 值在計算機(jī)技術(shù)中稱為值在計算機(jī)技術(shù)中稱為“真值真值”。 在計算機(jī)中需要把數(shù)的符號數(shù)碼化。在計算機(jī)中需要把數(shù)的符號數(shù)碼化。 通常,約定二進(jìn)制數(shù)的最高位為符號位,通常,約定二進(jìn)制數(shù)的最高位為符號位, “0”“0”表示正號,表示正號,“1”“1”表示負(fù)號。這種表示負(fù)號。這種 在計算機(jī)中使用的表示數(shù)的形式稱為在計算機(jī)中使用的表示數(shù)的形式稱為機(jī)機(jī) 器數(shù)器數(shù)。 18 西華師范大學(xué)西華師范大學(xué) 2.1.2 無符號數(shù)和帶符號數(shù)(續(xù)) 常見的機(jī)器數(shù)有原碼、反碼、補(bǔ)碼等常見的機(jī)器數(shù)有原碼、反碼、補(bǔ)碼等 3 3種不同的表示形式。種不同的表示形式。 帶符號

16、數(shù)的最高位被用來表示符號位,帶符號數(shù)的最高位被用來表示符號位, 而不再表示數(shù)值位。前例中的而不再表示數(shù)值位。前例中的N N1 1、N N2 2 在在 這里的含義變?yōu)椋哼@里的含義變?yōu)椋?N N1 1=01001 =01001 表示表示+9+9。 N N2 2=11001 =11001 根據(jù)機(jī)器數(shù)的不同形根據(jù)機(jī)器數(shù)的不同形 式表示不同的值,如是原碼則表示式表示不同的值,如是原碼則表示-9-9, 補(bǔ)碼則表示補(bǔ)碼則表示-7-7,反碼則表示,反碼則表示-6-6。 19 西華師范大學(xué)西華師范大學(xué) 2.1.3 原碼表示法 原碼表示法是一種最簡單的機(jī)器數(shù)表原碼表示法是一種最簡單的機(jī)器數(shù)表 示法,用最高位表示符

17、號位,符號位為示法,用最高位表示符號位,符號位為 “0”“0”表示該數(shù)為正,符號位為表示該數(shù)為正,符號位為“1”“1”表表 示該數(shù)為負(fù),數(shù)值部分與真值相同。示該數(shù)為負(fù),數(shù)值部分與真值相同。 設(shè) 二 進(jìn) 制 純 小 數(shù) 的 原 碼 形 式 為設(shè) 二 進(jìn) 制 純 小 數(shù) 的 原 碼 形 式 為 X Xs s.X.X1 1X X2 2XXn n,字長字長n+1n+1位,其中位,其中X Xs s表示符表示符 號位。號位。 例例1 1:X X1 1=0.0110, X=0.0110, X1 1 原 原= =0 0.0110 .0110 X X2 2= =- -0.01100.0110, , X X2 2

18、 原 原= =1 1.0110 .0110 20 西華師范大學(xué)西華師范大學(xué) 2.1.3 原碼表示法(續(xù)) 設(shè)二進(jìn)制純整數(shù)的原碼形式為設(shè)二進(jìn)制純整數(shù)的原碼形式為X Xs sX X1 1X X2 2XXn n, 其中其中X Xs s表示符號位。表示符號位。 例例2 2: X X1 1=1101, X=1101, X1 1 原 原= =0 01101 1101 X X2 2= =- -11011101, , X X2 2 原 原= =1 11101 1101 在原碼表示中,真值在原碼表示中,真值0 0有兩種不同的表示有兩種不同的表示 形式:形式: +0 +0原 原= =00000 00000 -0-

19、0原 原= =10000 10000 21 西華師范大學(xué)西華師范大學(xué) 2.1.4 補(bǔ)碼表示法 1. 1.模和同余模和同余 模模是指一個計量器的容量,可用是指一個計量器的容量,可用M M表示。表示。 例如:一個例如:一個4 4位的二進(jìn)制計數(shù)器,當(dāng)計數(shù)器從位的二進(jìn)制計數(shù)器,當(dāng)計數(shù)器從0 0 計到計到1515之后,再加之后,再加1 1,計數(shù)值又變?yōu)?,計?shù)值又變?yōu)? 0。這個計。這個計 數(shù)器的容量數(shù)器的容量M=2M=24 4=16=16,即模為即模為1616。由此可見,。由此可見, 純小數(shù)的模為純小數(shù)的模為2 2,一個字長為,一個字長為n+1n+1位的純整數(shù)的位的純整數(shù)的 模為模為2 2n+1 n+1

20、。 。 同余同余是指兩整數(shù)是指兩整數(shù)A A、B B除以同一正整數(shù)除以同一正整數(shù)M M, 所得余數(shù)相同,則稱所得余數(shù)相同,則稱A A、B B對對M M同余,即同余,即A A、B B在在 以以M M為模時是相等的,可寫作為模時是相等的,可寫作 A=B (mod M) A=B (mod M) 22 西華師范大學(xué)西華師范大學(xué) 時鐘正撥和倒撥 對鐘表而言,對鐘表而言,M=12M=12。假設(shè):時鐘停在假設(shè):時鐘停在 8 8點(diǎn),而現(xiàn)在正確的時間是點(diǎn),而現(xiàn)在正確的時間是6 6點(diǎn),這時撥點(diǎn),這時撥 準(zhǔn)時鐘的方法有兩種:正撥和倒撥。準(zhǔn)時鐘的方法有兩種:正撥和倒撥。 分針倒著旋轉(zhuǎn)分針倒著旋轉(zhuǎn)2 2圈,等于分針正著旋

21、圈,等于分針正著旋 轉(zhuǎn)轉(zhuǎn)1010圈。故有:圈。故有:-2=10 (-2=10 (mod 12) mod 12) ,即即 - - 2 2和和1010同余。同余。 8-2=8+10 ( 8-2=8+10 (mod 12) mod 12) 23 西華師范大學(xué)西華師范大學(xué) 根據(jù)運(yùn)算時根據(jù)運(yùn)算時“模?!钡母拍畹母拍?5 52 25 510103 3 (Mod 12Mod 12) 對于某一確定的模,某數(shù)減去一個數(shù),可以用對于某一確定的模,某數(shù)減去一個數(shù),可以用 加上那個數(shù)的負(fù)數(shù)的補(bǔ)數(shù)來代替。加上那個數(shù)的負(fù)數(shù)的補(bǔ)數(shù)來代替。 x x補(bǔ)補(bǔ)M Mx x (Mod MMod M) 當(dāng)當(dāng)x0 x0時,時,M Mx x

22、 大于大于M M,把,把M M丟掉,所以丟掉,所以xx補(bǔ)補(bǔ) x x ,即正數(shù)的補(bǔ)數(shù)等于其本身。,即正數(shù)的補(bǔ)數(shù)等于其本身。 當(dāng)當(dāng)x x0 0時,時,xx補(bǔ)補(bǔ)M Mx xM M|x|x|,所以負(fù)數(shù)的,所以負(fù)數(shù)的 補(bǔ)數(shù)等于模與該數(shù)絕對值之差。補(bǔ)數(shù)等于模與該數(shù)絕對值之差。 2021-6-2124 西華師范大學(xué)西華師范大學(xué) 小數(shù)補(bǔ)碼定義: 2 mod 0 x1- x 2 1x0 x x 補(bǔ) 2021-6-2125 x0.1011, x補(bǔ)10 x10.0000+(0.1011) 1.0101 例:x0.1011, x補(bǔ)01011 西華師范大學(xué)西華師范大學(xué) 2021-6-2126 )2 (Mod 0 x2-

23、x 2 2x0 x x 1n n1n n 補(bǔ) 例:x1011, x補(bǔ)01011 整數(shù)的補(bǔ)碼定義: 5 2 例:x1011 x補(bǔ) x100000+(1011) 10101 西華師范大學(xué)西華師范大學(xué) 補(bǔ)碼中補(bǔ)碼中“0”0”的表示是唯一的的表示是唯一的 00補(bǔ)補(bǔ) 00補(bǔ)補(bǔ)0.000 0.000 (純小數(shù))純小數(shù)) 00補(bǔ)補(bǔ) 00補(bǔ)補(bǔ)000 000 (純整數(shù))純整數(shù)) 補(bǔ)碼表示的最小數(shù)可以表示到補(bǔ)碼表示的最小數(shù)可以表示到1 1或或2 2n n 對于純小數(shù)對于純小數(shù) 11補(bǔ)補(bǔ)2 2( (1)1)1.000 (Mod 2)1.000 (Mod 2) 對于純整數(shù)對于純整數(shù) 2 2n n 補(bǔ)補(bǔ)2 2n n 1

24、 1 ( (2 2n n) )1000 1000 (Mod Mod 2 2n n 1 1) ) 2021-6-2127 特征值 西華師范大學(xué)西華師范大學(xué) 補(bǔ)碼的表示范圍 對于純小數(shù),對于純小數(shù),n n1 1位數(shù)據(jù)表示范圍:位數(shù)據(jù)表示范圍: 1 1.11111.111110 0.11111.11111(原碼)即(原碼)即(1(12 2 n n) ) (1(12 2 n n) ) 1 1.00001.000010 0.11111.11111(補(bǔ)碼)(補(bǔ)碼) 1 1.00000.000000 0.11111.11111(補(bǔ)碼)即(補(bǔ)碼)即1 11 12 2 n n 對于純整數(shù),對于純整數(shù),n n1

25、1位數(shù)據(jù)表示范圍:位數(shù)據(jù)表示范圍: 1 111111111110 011111 11111 (原碼)即(原碼)即(2(2n n1) 1) (2(2n n1)1) 100001 1000010 011111 11111 (補(bǔ)碼)(補(bǔ)碼) 1000001000000 011111 11111 (補(bǔ)碼)即(補(bǔ)碼)即2 2 n n 2 2n n1 1 2021-6-2128 西華師范大學(xué)西華師范大學(xué) 正數(shù),數(shù)值部分與真值形式相同;正數(shù),數(shù)值部分與真值形式相同; 負(fù)數(shù),將真值的數(shù)值部分按位取反,且在最負(fù)數(shù),將真值的數(shù)值部分按位取反,且在最 低位上加低位上加1 1。 若 真 值 為 純 小 數(shù) , 它 的

26、 補(bǔ) 碼 形 式 為若 真 值 為 純 小 數(shù) , 它 的 補(bǔ) 碼 形 式 為 X Xs s.X.X1 1X X2 2XXn n,其中其中X Xs s表示符號位。表示符號位。 例5: X1=0.0110, X1補(bǔ)=0.0110 X2=-0.0110, X2補(bǔ)=1.1010 補(bǔ)碼表示: 29 西華師范大學(xué)西華師范大學(xué) 2.補(bǔ)碼表示(續(xù)) 若真值為純整數(shù),它的補(bǔ)碼形式為若真值為純整數(shù),它的補(bǔ)碼形式為 X Xs sX X1 1X X2 2XXn n,其中其中X Xs s表示符號位。表示符號位。 例6:X1=1101, X1補(bǔ)=01101 X2=-1101, X2補(bǔ)=10011 30 西華師范大學(xué)西華

27、師范大學(xué) 當(dāng)當(dāng)X X為正數(shù)時,為正數(shù)時, XX補(bǔ) 補(bǔ)= =XX原 原= =X X 當(dāng)當(dāng)X X為負(fù)數(shù)時,由為負(fù)數(shù)時,由 XX原 原轉(zhuǎn)換為 轉(zhuǎn)換為 XX補(bǔ) 補(bǔ)的方法: 的方法: XX原 原除掉符號位外的各位取反加 除掉符號位外的各位取反加“1”“1”。 自低位向高位,尾數(shù)的第一個自低位向高位,尾數(shù)的第一個“1”“1”及其及其 右部的右部的“0”“0”保持不變,左部的各位取反,保持不變,左部的各位取反, 符號位保持不變。符號位保持不變。 例例7 7: XX原 原 =1.1110011000 =1.1110011000 XX補(bǔ) 補(bǔ) = =1 1. .00011000011010001000 3.由真值

28、、原碼轉(zhuǎn)換為補(bǔ)碼 31 不變不變不變不變變反變反 西華師范大學(xué)西華師范大學(xué) 2.1.5 反碼表示法 反碼表示法與補(bǔ)碼類似,反碼表示法與補(bǔ)碼類似, 正數(shù)正數(shù): :數(shù)值部分與真值形式相同;數(shù)值部分與真值形式相同; 負(fù)數(shù)負(fù)數(shù): :將真值的數(shù)值部分按位取反。將真值的數(shù)值部分按位取反。 若真值為純小數(shù),它的反碼形式為若真值為純小數(shù),它的反碼形式為 X Xs s.X.X1 1X X2 2XXn n,其中其中X Xs s表示符號位。表示符號位。 例例9 9:X X1 1=0.0110=0.0110, X X1 1 反 反= =0 0.0110 .0110 X X2 2= =- -0.01100.0110,

29、X X2 2 反 反= =1 1.1001 .1001 32 西華師范大學(xué)西華師范大學(xué) 2.1.5 反碼表示法(續(xù)) 若真值為純整數(shù),它的反碼形式為若真值為純整數(shù),它的反碼形式為 X Xs sX X1 1X X2 2XXn n,其中其中X Xs s表示符號位。表示符號位。 例例1010:X X1 1=1101=1101, X X1 1 補(bǔ) 補(bǔ)= =0 01101 1101 X X2 2= =- -11011101, X X2 2 補(bǔ) 補(bǔ)= =1 10010 0010 在反碼表示中,真值在反碼表示中,真值0 0也有兩種不同的表也有兩種不同的表 示形式:示形式: +0 +0反 反= =00000

30、00000 -0 -0反 反= =11111 11111 33 西華師范大學(xué)西華師范大學(xué) 1. 1.比較比較 對于正數(shù)它們都等于真值本身,而對于負(fù)數(shù)各有對于正數(shù)它們都等于真值本身,而對于負(fù)數(shù)各有 不同的表示。不同的表示。 最高位都表示符號位,補(bǔ)碼和反碼的符號位可作最高位都表示符號位,補(bǔ)碼和反碼的符號位可作 為數(shù)值位的一部分看待,和數(shù)值位一起參加運(yùn)算;為數(shù)值位的一部分看待,和數(shù)值位一起參加運(yùn)算; 但原碼的符號位不允許和數(shù)值位同等看待,必須但原碼的符號位不允許和數(shù)值位同等看待,必須 分開進(jìn)行處理。分開進(jìn)行處理。 對于真值對于真值0 0,原碼和反碼各有兩種不同的表示形,原碼和反碼各有兩種不同的表示形

31、 式,而補(bǔ)碼只有唯一的一種表示形式。式,而補(bǔ)碼只有唯一的一種表示形式。 原碼、反碼表示的正、負(fù)數(shù)范圍相對零來說是對原碼、反碼表示的正、負(fù)數(shù)范圍相對零來說是對 稱的;但稱的;但補(bǔ)碼負(fù)數(shù)補(bǔ)碼負(fù)數(shù)表示范圍比正數(shù)表示范圍寬,表示范圍比正數(shù)表示范圍寬, 能多表示一個最負(fù)的數(shù)能多表示一個最負(fù)的數(shù)(絕對值最大的負(fù)數(shù)),(絕對值最大的負(fù)數(shù)), 其值等于其值等于-2-2n n(純整數(shù))或純整數(shù))或-1-1(純小數(shù))。(純小數(shù))。 2.1.6 三種碼制的比較與轉(zhuǎn)換 34 西華師范大學(xué)西華師范大學(xué) 真值與3種機(jī)器數(shù)間的對照 35 真值真值 X X 真值真值 X X 十進(jìn)制十進(jìn)制 二進(jìn)制二進(jìn)制 XX 原 原XX 反反

32、XX 補(bǔ)補(bǔ) 十進(jìn)制十進(jìn)制 二進(jìn)制二進(jìn)制 XX 原 原 XX 反反 XX 補(bǔ)補(bǔ) +0+0 +1+1 +2+2 +3+3 +4+4 +5+5 +6+6 +7+7 +8+8 +000+000 +001+001 +010+010 +011+011 +100+100 +101+101 +110+110 +111+111 - - 00000000 00010001 00100010 00110011 01000100 01010101 01100110 01110111 - - - -0 0 - -1 1 - -2 2 - -3 3 - -4 4 - -5 5 - -6 6 - -7 7 - -8 8 -

33、 -000000 - -001001 - -010010 - -011011 - -100100 - -101101 - -110110 - -111111 - -10001000 10001000 10011001 10101010 10111011 11001100 11011101 11101110 11111111 - - 11111111 1111110 0 11110101 1101100 0 1 1011011 1011010 0 10100101 1001000 0 - - 00000000 1111111 1 11111010 1101101 1 1 11 10000 101

34、1011 1 10101 10 0 1001001 1 10001000 西華師范大學(xué)西華師范大學(xué) 2.轉(zhuǎn)換轉(zhuǎn)換 如果已知機(jī)器的字長,則機(jī)器數(shù)的位數(shù)應(yīng)如果已知機(jī)器的字長,則機(jī)器數(shù)的位數(shù)應(yīng) 補(bǔ)夠相應(yīng)的位。例如,設(shè)機(jī)器字長為補(bǔ)夠相應(yīng)的位。例如,設(shè)機(jī)器字長為8 8位,則:位,則: X X1 1=1011 X=1011 X2 2= =- -1011 1011 X X1 1 原 原= =0 00001011 0001011 X X2 2 原 原= =1 10001011 0001011 X X1 1 補(bǔ) 補(bǔ)= =0 00001011 0001011 X X2 2 補(bǔ) 補(bǔ)= =1 11110101 111

35、0101 X X1 1 反 反= =0 00001011 0001011 X X2 2 反 反= =1 11110100 1110100 X X3 3=0.1011 X=0.1011 X4 4= =- -0.1011 0.1011 X X3 3 原 原= =0 0.1011000 .1011000 X X4 4 原 原= =1 1.1011000 .1011000 X X3 3 補(bǔ) 補(bǔ)= =0 0.1011000 .1011000 X X4 4 補(bǔ) 補(bǔ)= =1 1.0101000 .0101000 X X3 3 反 反= =0 0.1011000 .1011000 X X4 4 反 反= =1

36、 1.0100111 .0100111 36 西華師范大學(xué)西華師范大學(xué) 2.2 機(jī)器數(shù)的定點(diǎn)表示與浮點(diǎn)表示 計算機(jī)在進(jìn)行算術(shù)運(yùn)算時,需要指出計算機(jī)在進(jìn)行算術(shù)運(yùn)算時,需要指出 小數(shù)點(diǎn)的位置。根據(jù)小數(shù)點(diǎn)的位置是否小數(shù)點(diǎn)的位置。根據(jù)小數(shù)點(diǎn)的位置是否 固定,在計算機(jī)中有兩種數(shù)據(jù)格式:定固定,在計算機(jī)中有兩種數(shù)據(jù)格式:定 點(diǎn)表示和浮點(diǎn)表示。點(diǎn)表示和浮點(diǎn)表示。 37 西華師范大學(xué)西華師范大學(xué) 2.2.1 定點(diǎn)表示法 在定點(diǎn)表示法中約定:所有數(shù)據(jù)的小在定點(diǎn)表示法中約定:所有數(shù)據(jù)的小 數(shù)點(diǎn)位置固定不變。數(shù)點(diǎn)位置固定不變。 1.1.定點(diǎn)小數(shù)定點(diǎn)小數(shù) 小數(shù)點(diǎn)的位置固定在最高有效數(shù)位之小數(shù)點(diǎn)的位置固定在最高有效數(shù)位

37、之 前,符號位之后前,符號位之后,記作,記作X Xs s.X.X1 1X X2 2XXn n,這這 個數(shù)是一個純小數(shù)。定點(diǎn)小數(shù)的小數(shù)點(diǎn)個數(shù)是一個純小數(shù)。定點(diǎn)小數(shù)的小數(shù)點(diǎn) 位置是隱含約定的,小數(shù)點(diǎn)并不需要真位置是隱含約定的,小數(shù)點(diǎn)并不需要真 正地占據(jù)一個二進(jìn)制位。正地占據(jù)一個二進(jìn)制位。 38 西華師范大學(xué)西華師范大學(xué) 定點(diǎn)小數(shù)表示范圍 圖圖2-2 2-2 定點(diǎn)小數(shù)格式定點(diǎn)小數(shù)格式 當(dāng)當(dāng)X Xs s=0=0,X X1 1X Xn n=1=1時,時,X X為最大正數(shù)。為最大正數(shù)。 X X最大正數(shù) 最大正數(shù) = =1-21-2- -n n 當(dāng)當(dāng)X Xn n=1=1,X Xs sX Xn-1 n-1=0

38、 =0時,時,X X為最小正數(shù)。為最小正數(shù)。 X X最小正數(shù) 最小正數(shù) = =2 2- -n n 39 n位數(shù)值位 數(shù)符 小數(shù)點(diǎn)位置(隱含) XsX1Xn-1Xn 西華師范大學(xué)西華師范大學(xué) 定點(diǎn)小數(shù)表示范圍(續(xù)) 當(dāng)當(dāng)X Xs s=1=1,表示表示X X為負(fù)數(shù),原碼和補(bǔ)碼的為負(fù)數(shù),原碼和補(bǔ)碼的 表示范圍有一些差別。表示范圍有一些差別。 若機(jī)器數(shù)為原碼表示,當(dāng)若機(jī)器數(shù)為原碼表示,當(dāng)X Xs sX Xn n均等均等 于于1 1時,時,X X為絕對值最大的負(fù)數(shù)。為絕對值最大的負(fù)數(shù)。 X X絕對值最大負(fù)數(shù) 絕對值最大負(fù)數(shù)= =-(1-2 -(1-2- -n n) ) 若機(jī)器數(shù)為補(bǔ)碼表示,當(dāng)若機(jī)器數(shù)為補(bǔ)

39、碼表示,當(dāng)X Xs s=1=1,X X1 1X Xn n 均等于均等于0 0時,時,X X為絕對值最大的負(fù)數(shù)。為絕對值最大的負(fù)數(shù)。 X X絕對值最大負(fù)數(shù) 絕對值最大負(fù)數(shù)= =-1 -1 40 西華師范大學(xué)西華師范大學(xué) 若機(jī)器字長有若機(jī)器字長有n+1n+1位,則有:位,則有: 原碼定點(diǎn)小數(shù)表示范圍:原碼定點(diǎn)小數(shù)表示范圍: -(1-2-(1-2- -n n) )(1-2(1-2-n -n) ) 補(bǔ)碼定點(diǎn)小數(shù)表示范圍:補(bǔ)碼定點(diǎn)小數(shù)表示范圍: -1-1(1-2(1-2- -n n) ) 若機(jī)器字長有若機(jī)器字長有8 8位,則有:位,則有: 原碼定點(diǎn)小數(shù)表示范圍:原碼定點(diǎn)小數(shù)表示范圍: - - 補(bǔ)碼定點(diǎn)小

40、數(shù)表示范圍:補(bǔ)碼定點(diǎn)小數(shù)表示范圍: -1 -1 定點(diǎn)小數(shù)表示范圍(續(xù)) 41128 127 128 127 128 127 西華師范大學(xué)西華師范大學(xué) 2.2.定點(diǎn)整數(shù)定點(diǎn)整數(shù) 定點(diǎn)整數(shù)即純整數(shù),定點(diǎn)整數(shù)即純整數(shù),小數(shù)點(diǎn)位置隱含小數(shù)點(diǎn)位置隱含 固定在最低有效數(shù)位之后固定在最低有效數(shù)位之后,記作,記作 X Xs sX X1 1X X2 2XXn n。 圖圖2-3 2-3 定點(diǎn)整數(shù)格式定點(diǎn)整數(shù)格式 42 XsX1Xn-1 n位數(shù)值位 數(shù)符 小數(shù)點(diǎn)位置(隱含) Xn 西華師范大學(xué)西華師范大學(xué) 若機(jī)器字長有若機(jī)器字長有n+1n+1位,則有:位,則有: 原碼定點(diǎn)整數(shù)的表示范圍:原碼定點(diǎn)整數(shù)的表示范圍: -

41、(2-(2n n-1)-1)(2(2n n-1)-1) 補(bǔ)碼定點(diǎn)整數(shù)的表示范圍:補(bǔ)碼定點(diǎn)整數(shù)的表示范圍: -2-2n n (2(2n n-1)-1) 若機(jī)器字長有若機(jī)器字長有8 8位,則有:位,則有: 原碼定點(diǎn)整數(shù)表示范圍:原碼定點(diǎn)整數(shù)表示范圍: -127 -127127127 補(bǔ)碼定點(diǎn)整數(shù)表示范圍:補(bǔ)碼定點(diǎn)整數(shù)表示范圍: -128 -128127127 定點(diǎn)整數(shù)表示范圍 43 西華師范大學(xué)西華師范大學(xué) 小數(shù)點(diǎn)的位置根據(jù)需要而浮動,這就是小數(shù)點(diǎn)的位置根據(jù)需要而浮動,這就是 浮點(diǎn)數(shù)。浮點(diǎn)數(shù)。 N=M N=Mr rE E 式中:式中:r r為浮點(diǎn)數(shù)階碼的底,與尾數(shù)的為浮點(diǎn)數(shù)階碼的底,與尾數(shù)的 基數(shù)

42、相同,通?;鶖?shù)相同,通常r=2r=2。E E和和M M都是帶符號數(shù),都是帶符號數(shù), E E叫做階碼,叫做階碼,M M叫做尾數(shù)。在大多數(shù)計算機(jī)中叫做尾數(shù)。在大多數(shù)計算機(jī)中 ,尾數(shù)為純小數(shù),常用原碼或補(bǔ)碼表示;階,尾數(shù)為純小數(shù),常用原碼或補(bǔ)碼表示;階 碼為純整數(shù),常用移碼或補(bǔ)碼表示。碼為純整數(shù),常用移碼或補(bǔ)碼表示。 2.2.2 浮點(diǎn)表示法 44 西華師范大學(xué)西華師范大學(xué) 圖圖2-5 2-5 浮點(diǎn)數(shù)的一般格式浮點(diǎn)數(shù)的一般格式 浮點(diǎn)數(shù)的底是隱含的,在整個機(jī)器數(shù)浮點(diǎn)數(shù)的底是隱含的,在整個機(jī)器數(shù) 中不出現(xiàn)。階碼的符號位為中不出現(xiàn)。階碼的符號位為e es s,階碼的大階碼的大 小反映了在數(shù)小反映了在數(shù)N N

43、中小數(shù)點(diǎn)的實際位置;尾中小數(shù)點(diǎn)的實際位置;尾 數(shù)的符號位為數(shù)的符號位為m ms s,它是整個浮點(diǎn)數(shù)的符號它是整個浮點(diǎn)數(shù)的符號 位,表示了該浮點(diǎn)數(shù)的正負(fù)。位,表示了該浮點(diǎn)數(shù)的正負(fù)。 浮點(diǎn)數(shù)的一般格式 45 尾數(shù)部分M階碼部分E esemsm k位n位1位1位 西華師范大學(xué)西華師范大學(xué) 浮點(diǎn)數(shù)的規(guī)格化表示 浮點(diǎn)數(shù)采用規(guī)格化表示方法的目的:浮點(diǎn)數(shù)采用規(guī)格化表示方法的目的: 為了提高運(yùn)算精度,充分利用尾數(shù)的有為了提高運(yùn)算精度,充分利用尾數(shù)的有 效數(shù)位,盡可能占滿位數(shù),以保留更多的效數(shù)位,盡可能占滿位數(shù),以保留更多的 有效數(shù)字。有效數(shù)字。 為了浮點(diǎn)數(shù)表示的唯一性。為了浮點(diǎn)數(shù)表示的唯一性。 例:例:0.1

44、001000.1001002 23 30.0010010.0010012 25 5 為達(dá)到上述目的,需要盡可能去掉尾數(shù)中為達(dá)到上述目的,需要盡可能去掉尾數(shù)中 的前置的前置“0” 0” 。即盡量使小數(shù)點(diǎn)后第一位。即盡量使小數(shù)點(diǎn)后第一位 為為“1”1”。 46 西華師范大學(xué)西華師范大學(xué) 47 規(guī)格化 (1) 規(guī)格化數(shù)的定義規(guī)格化數(shù)的定義 (2) 規(guī)格化數(shù)的判斷規(guī)格化數(shù)的判斷 R = 2 |M| 1 1 2 M0 真值真值 原碼原碼 補(bǔ)碼補(bǔ)碼 反碼反碼 規(guī)格化形式規(guī)格化形式 M 0 規(guī)格化形式規(guī)格化形式 真值真值 原碼原碼 補(bǔ)碼補(bǔ)碼 反碼反碼 0.1 0.1 0.1 0.1 原碼原碼 不論正數(shù)、負(fù)數(shù)

45、,第一數(shù)位為不論正數(shù)、負(fù)數(shù),第一數(shù)位為1 補(bǔ)碼補(bǔ)碼 符號位和第符號位和第 一數(shù)位不同一數(shù)位不同 Mf M11 0.1 1.1 1.0 1.0 西華師范大學(xué)西華師范大學(xué) 2021-6-2148 特例 S = = 0.100 0 1 2 補(bǔ) 不是規(guī)格化的數(shù) 1 2 S = 1 1補(bǔ) 是規(guī)格化的數(shù) S補(bǔ) = 1 . 1 0 0 0 S補(bǔ) = 1 . 0 0 0 0 例: S補(bǔ)0.1101101 和 S補(bǔ)1.0101101 是規(guī)格化數(shù) S補(bǔ)0.0101101 和 S補(bǔ)1.1101101 不是規(guī)格化數(shù) 西華師范大學(xué)西華師范大學(xué) 浮點(diǎn)數(shù)的表示范圍 以階碼與尾數(shù)均采用原碼為例:以階碼與尾數(shù)均采用原碼為例:

46、數(shù)數(shù) 符符 階階 符符 階碼階碼 (m位位) 尾數(shù)尾數(shù) (n位位) 真真 值值 最小正數(shù)最小正數(shù)0111110001 最大正數(shù)最大正數(shù)0011111111 最大負(fù)數(shù)最大負(fù)數(shù) (絕對值最小絕對值最小) 1111110001 最小負(fù)數(shù)最小負(fù)數(shù) (絕對值最大)絕對值最大) 1011111111 )1 2 m (2n 2 )1 2 m (2n 2-1 )1 2 m (2n 2 )1(2n m 22-1 西華師范大學(xué)西華師范大學(xué) 浮點(diǎn)數(shù)的典型值 50 以階碼與尾數(shù)均采用補(bǔ)碼為例:以階碼與尾數(shù)均采用補(bǔ)碼為例: 西華師范大學(xué)西華師范大學(xué) 將 寫成二進(jìn)制在定點(diǎn)機(jī)和浮點(diǎn)機(jī)中的機(jī)器數(shù)形 式。其中定點(diǎn)機(jī)為字長10位

47、的原碼格式;浮點(diǎn)機(jī)尾數(shù) 10 位,數(shù)符 1 位,階碼 5 位(含1位階符)。 19 128 二進(jìn)制形式二進(jìn)制形式 定點(diǎn)表示定點(diǎn)表示 浮點(diǎn)規(guī)格化形式浮點(diǎn)規(guī)格化形式 x原 原 = 1, 0010; 0. 100110000 x補(bǔ) 補(bǔ) = 1, 1110; 0. 100110000 x反 反 = 1, 1101; 0. 100110000 定點(diǎn)機(jī)中定點(diǎn)機(jī)中 浮點(diǎn)機(jī)中浮點(diǎn)機(jī)中 00 x = 0.0010011 x = 0.0010011 x = 0.10011000002-10 x原 原 = x補(bǔ)補(bǔ) = x反反 = 0.0010011000 練習(xí) 解:解: 設(shè)設(shè) x = + 19 128 西華師范大學(xué)

48、西華師范大學(xué) 52 x = 111010 000 例 將 58 表示成二進(jìn)制定點(diǎn)數(shù)和浮點(diǎn)數(shù),并寫出它 在定點(diǎn)機(jī)和浮點(diǎn)機(jī)中的三種機(jī)器數(shù)的形式(其他要 求同上例)。 解:設(shè) x = 58 二進(jìn)制形式 定點(diǎn)表示 浮點(diǎn)規(guī)格化形式 x原 = 1, 000111010 x補(bǔ) = 1, 111000110 x反 = 1, 111000101 x原 = 0, 0110; 1. 111010000 x補(bǔ) = 0, 0110; 1. 000110000 x反 = 0, 0110; 1. 000101111 定點(diǎn)機(jī)中浮點(diǎn)機(jī)中 x = 111010 x = (0.1110100000) 2110 西華師范大學(xué)西華師范

49、大學(xué) 浮點(diǎn)數(shù)的階碼采用移碼的原因浮點(diǎn)數(shù)的階碼采用移碼的原因 便于比較浮點(diǎn)數(shù)的大小。階碼大的,其對應(yīng)的便于比較浮點(diǎn)數(shù)的大小。階碼大的,其對應(yīng)的 真值就大,階碼小的,對應(yīng)的真值就小。真值就大,階碼小的,對應(yīng)的真值就小。 簡化機(jī)器中的判零電路。當(dāng)階碼全為簡化機(jī)器中的判零電路。當(dāng)階碼全為0 0,尾數(shù)也,尾數(shù)也 全為全為0 0時,表示機(jī)器零。時,表示機(jī)器零。 53 2.2.3 移碼表示法 西華師范大學(xué)西華師范大學(xué) 2.2.3 移碼表示法 移碼就是在真值移碼就是在真值X X上加一個常數(shù)(偏置值),相上加一個常數(shù)(偏置值),相 當(dāng)于當(dāng)于X X在數(shù)軸上向正方向平移了一段距離,這就是在數(shù)軸上向正方向平移了一段距

50、離,這就是 “移碼移碼”一詞的來由。一詞的來由。 XX移 移= =偏置值 偏置值+ +X X 對于字長對于字長8 8位的定點(diǎn)整數(shù),偏置值為位的定點(diǎn)整數(shù),偏置值為2 27 7。 例例1111:X=1011101X=1011101 X X移 移= =2 27 7+ +X=10000000+1011101= X=10000000+1011101=1 110111011011101 X X補(bǔ) 補(bǔ)= =0 01011101 1011101 例例1212:X=X=- -10111011011101 X X移 移= = 2 27 7 + +X=10000000-1011101=X=10000000-1011

51、101=0 001000110100011 X X補(bǔ) 補(bǔ)= =1 10100011 0100011 54 西華師范大學(xué)西華師范大學(xué) 偏置值為27的移碼、補(bǔ)碼和真值之間的關(guān)系 55 西華師范大學(xué)西華師范大學(xué) 偏置值為2n 的移碼的特點(diǎn) 在移碼中,最高位為在移碼中,最高位為“0”“0”表示負(fù)數(shù),最高位表示負(fù)數(shù),最高位 為為“1”“1”表示正數(shù)。表示正數(shù)。 移碼為全移碼為全0 0時,它所對應(yīng)的真值最小,為全時,它所對應(yīng)的真值最小,為全1 1時,時, 它所對應(yīng)的真值最大。它所對應(yīng)的真值最大。 真值真值0 0在移碼中的表示形式是唯一的,即在移碼中的表示形式是唯一的,即+0+0移 移 =-0=-0移 移=

52、 =1000 1000。 移碼把真值映射到一個正數(shù)域,所以移碼把真值映射到一個正數(shù)域,所以可將移碼可將移碼 視為無符號數(shù),直接按無符號數(shù)規(guī)則比較大小。視為無符號數(shù),直接按無符號數(shù)規(guī)則比較大小。 同一數(shù)值的移碼和補(bǔ)碼除最高位相反外,其他同一數(shù)值的移碼和補(bǔ)碼除最高位相反外,其他 各位相同各位相同。 西華師范大學(xué)西華師范大學(xué) 圖圖2-6 IEEE 754標(biāo)準(zhǔn)的浮點(diǎn)數(shù)格式標(biāo)準(zhǔn)的浮點(diǎn)數(shù)格式 2.2.5 IEEE 754標(biāo)準(zhǔn)浮點(diǎn)數(shù) 57 類型類型 數(shù)符數(shù)符 m ms s 階碼階碼 E E 尾數(shù)尾數(shù) m m 總位數(shù)總位數(shù) 偏偏置值置值 短浮點(diǎn)數(shù)短浮點(diǎn)數(shù) 1 1 8 8 2323 3232 7FH7FH 12

53、7127 長浮點(diǎn)數(shù)長浮點(diǎn)數(shù) 1 1 1111 5252 6464 3FFH3FFH 10231023 臨時浮點(diǎn)數(shù)臨時浮點(diǎn)數(shù) 1 1 1515 6464 8080 3FFFH3FFFH 1638316383 Emsm 階碼部分,用移碼表示尾符尾數(shù)數(shù)值位 尾數(shù)部分,用原碼表示 西華師范大學(xué)西華師范大學(xué) 以短浮點(diǎn)數(shù)為例:以短浮點(diǎn)數(shù)為例: 最高位為數(shù)符位;其后是最高位為數(shù)符位;其后是8 8位階碼,以位階碼,以2 2 為底,階碼的偏置值為為底,階碼的偏置值為127127;其余;其余2323位是尾數(shù)。位是尾數(shù)。 為了使尾數(shù)部分能表示更多一位的有效為了使尾數(shù)部分能表示更多一位的有效 值,值,IEEE754I

54、EEE754采用采用隱含尾數(shù)最高數(shù)位隱含尾數(shù)最高數(shù)位1 1(即這(即這 一位一位1 1不表示出來)的方法,因此尾數(shù)實際上不表示出來)的方法,因此尾數(shù)實際上 是是2424位。應(yīng)注意的是,位。應(yīng)注意的是,隱含的隱含的1 1是一位整數(shù)是一位整數(shù) (即位權(quán)為(即位權(quán)為2 20 0),在浮點(diǎn)格式中表示出來的,在浮點(diǎn)格式中表示出來的 2323位尾數(shù)是純小數(shù),并用原碼表示。位尾數(shù)是純小數(shù),并用原碼表示。 58 西華師范大學(xué)西華師范大學(xué) 以短浮點(diǎn)數(shù)格式存儲該數(shù)。以短浮點(diǎn)數(shù)格式存儲該數(shù)。 符號位符號位=0 階碼階碼=10000101 尾數(shù)尾數(shù)=10010001000000000000000 59 例例13:將:

55、將(100.25)10轉(zhuǎn)換成短浮點(diǎn)數(shù)格式轉(zhuǎn)換成短浮點(diǎn)數(shù)格式 。 短浮點(diǎn)數(shù)代碼為短浮點(diǎn)數(shù)代碼為 0;100 0010 1;100 1000 1000 0000 0000 0000 表示為十六進(jìn)制的代碼:表示為十六進(jìn)制的代碼:42C88000H。 十進(jìn)制數(shù)十進(jìn)制數(shù)二進(jìn)制數(shù)二進(jìn)制數(shù): (100.25)10=(1100100.01)2 非規(guī)格化數(shù)非規(guī)格化數(shù)規(guī)格化數(shù)規(guī)格化數(shù): 1100100.01=1.1001000126 計算移碼表示的階碼(偏置值階碼真值)計算移碼表示的階碼(偏置值階碼真值) 1111111+110=10000101 西華師范大學(xué)西華師范大學(xué) 十六進(jìn)制十六進(jìn)制二進(jìn)制形式,并分離出符號

56、位、二進(jìn)制形式,并分離出符號位、 階碼和尾數(shù)。階碼和尾數(shù)。 C1C90000H= 1;10000011;10010010000000000000000 60 階碼階碼符號位符號位 尾數(shù)尾數(shù) 例例14:把短浮點(diǎn)數(shù):把短浮點(diǎn)數(shù)C1C90000H轉(zhuǎn)換成為十進(jìn)制轉(zhuǎn)換成為十進(jìn)制 數(shù)數(shù) 西華師范大學(xué)西華師范大學(xué) 計算出階碼真值(移碼偏置值)計算出階碼真值(移碼偏置值) 10000011-1111111=100 以規(guī)格化二進(jìn)制數(shù)形式寫出此數(shù)以規(guī)格化二進(jìn)制數(shù)形式寫出此數(shù) 1.100100124 寫成非規(guī)格化二進(jìn)制數(shù)形式寫成非規(guī)格化二進(jìn)制數(shù)形式 11001.001 轉(zhuǎn)換成十進(jìn)制數(shù),并加上符號位。轉(zhuǎn)換成十進(jìn)制數(shù),

57、并加上符號位。 (11001.001)2=(25.125)10 所以,該浮點(diǎn)數(shù)所以,該浮點(diǎn)數(shù)=-25.125 61 西華師范大學(xué)西華師范大學(xué) 1.1.定點(diǎn)、浮點(diǎn)表示法的區(qū)別定點(diǎn)、浮點(diǎn)表示法的區(qū)別 數(shù)值的表示范圍數(shù)值的表示范圍 假設(shè)定點(diǎn)數(shù)和浮點(diǎn)數(shù)的字長相同,浮假設(shè)定點(diǎn)數(shù)和浮點(diǎn)數(shù)的字長相同,浮 點(diǎn)表示法所能表示的數(shù)值范圍將遠(yuǎn)遠(yuǎn)大于點(diǎn)表示法所能表示的數(shù)值范圍將遠(yuǎn)遠(yuǎn)大于 定點(diǎn)數(shù)。定點(diǎn)數(shù)。 精度精度 對于字長相同的定點(diǎn)數(shù)和浮點(diǎn)數(shù)來說,對于字長相同的定點(diǎn)數(shù)和浮點(diǎn)數(shù)來說, 浮點(diǎn)數(shù)雖然擴(kuò)大了數(shù)的表示范圍,但這正浮點(diǎn)數(shù)雖然擴(kuò)大了數(shù)的表示范圍,但這正 是以降低精度為代價的,也就是數(shù)軸上各是以降低精度為代價的,也就

58、是數(shù)軸上各 點(diǎn)的排列更稀疏了。點(diǎn)的排列更稀疏了。 2.2.2.2.6 6 定點(diǎn)、浮點(diǎn)表示法和定點(diǎn)、浮點(diǎn)計算機(jī)定點(diǎn)、浮點(diǎn)表示法和定點(diǎn)、浮點(diǎn)計算機(jī) 62 西華師范大學(xué)西華師范大學(xué) 數(shù)的運(yùn)算數(shù)的運(yùn)算 浮點(diǎn)運(yùn)算要比定點(diǎn)運(yùn)算復(fù)雜得多。浮點(diǎn)運(yùn)算要比定點(diǎn)運(yùn)算復(fù)雜得多。 溢出處理溢出處理 在定點(diǎn)運(yùn)算時,當(dāng)運(yùn)算結(jié)果超出數(shù)的表在定點(diǎn)運(yùn)算時,當(dāng)運(yùn)算結(jié)果超出數(shù)的表 示范圍,就發(fā)生溢出。而在浮點(diǎn)運(yùn)算時,示范圍,就發(fā)生溢出。而在浮點(diǎn)運(yùn)算時, 運(yùn)算結(jié)果超出尾數(shù)的表示范圍卻并不一定運(yùn)算結(jié)果超出尾數(shù)的表示范圍卻并不一定 溢出,只有當(dāng)階碼超出所能表示的范圍時,溢出,只有當(dāng)階碼超出所能表示的范圍時, 才發(fā)生溢出。才發(fā)生溢出。 1.

59、1.定點(diǎn)、浮點(diǎn)表示法的區(qū)別(續(xù))定點(diǎn)、浮點(diǎn)表示法的區(qū)別(續(xù)) 63 西華師范大學(xué)西華師范大學(xué) 2. .定點(diǎn)機(jī)與浮點(diǎn)機(jī)定點(diǎn)機(jī)與浮點(diǎn)機(jī) 通常可以將計算機(jī)分為幾檔:通??梢詫⒂嬎銠C(jī)分為幾檔: 定點(diǎn)機(jī)定點(diǎn)機(jī) 以定點(diǎn)運(yùn)算為主,浮點(diǎn)運(yùn)算是通過軟件以定點(diǎn)運(yùn)算為主,浮點(diǎn)運(yùn)算是通過軟件 來實現(xiàn)的。來實現(xiàn)的。 定點(diǎn)機(jī)浮點(diǎn)運(yùn)算部件定點(diǎn)機(jī)浮點(diǎn)運(yùn)算部件 浮點(diǎn)運(yùn)算部件是專門用于對浮點(diǎn)數(shù)進(jìn)行運(yùn)浮點(diǎn)運(yùn)算部件是專門用于對浮點(diǎn)數(shù)進(jìn)行運(yùn) 算的部件。算的部件。 浮點(diǎn)機(jī)浮點(diǎn)機(jī) 具有浮點(diǎn)運(yùn)算指令和基本的浮點(diǎn)運(yùn)算器。具有浮點(diǎn)運(yùn)算指令和基本的浮點(diǎn)運(yùn)算器。 64 西華師范大學(xué)西華師范大學(xué) 2.3 非數(shù)值數(shù)據(jù)的表示 非數(shù)值數(shù)據(jù),又稱為字符數(shù)據(jù),

60、通常非數(shù)值數(shù)據(jù),又稱為字符數(shù)據(jù),通常 是指字符、字符串、圖形符號和漢字等各是指字符、字符串、圖形符號和漢字等各 種數(shù)據(jù),它們不用來表示數(shù)值的大小,一種數(shù)據(jù),它們不用來表示數(shù)值的大小,一 般情況下不對它們進(jìn)行算術(shù)運(yùn)算。般情況下不對它們進(jìn)行算術(shù)運(yùn)算。 65 西華師范大學(xué)西華師范大學(xué) 2.3.1 字符和字符串的表示 1.1.ASCIIASCII字符編碼字符編碼 常見的常見的ASCIIASCII碼用七位二進(jìn)制表示一個字符,碼用七位二進(jìn)制表示一個字符, 它包括它包括1010個十進(jìn)制數(shù)字(個十進(jìn)制數(shù)字(0 09 9)、)、5252個英文大個英文大 寫和小寫字母(寫和小寫字母(A AZ Z,a az z)、

溫馨提示

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

評論

0/150

提交評論