白中英計(jì)算機(jī)組成原理第2章_運(yùn)算方法與運(yùn)算器(選用)_第1頁(yè)
白中英計(jì)算機(jī)組成原理第2章_運(yùn)算方法與運(yùn)算器(選用)_第2頁(yè)
白中英計(jì)算機(jī)組成原理第2章_運(yùn)算方法與運(yùn)算器(選用)_第3頁(yè)
白中英計(jì)算機(jī)組成原理第2章_運(yùn)算方法與運(yùn)算器(選用)_第4頁(yè)
白中英計(jì)算機(jī)組成原理第2章_運(yùn)算方法與運(yùn)算器(選用)_第5頁(yè)
已閱讀5頁(yè),還剩185頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第2章 運(yùn)算方法和運(yùn)算器 2021年6月22日星期二2 目錄目錄 2.0 數(shù)據(jù)的類(lèi)型數(shù)據(jù)的類(lèi)型 2.1 數(shù)據(jù)與文字的表示方法數(shù)據(jù)與文字的表示方法 (掌握)(掌握) 2.2 定點(diǎn)加法、減法運(yùn)算定點(diǎn)加法、減法運(yùn)算 (掌握)(掌握) 2.3 定點(diǎn)乘法運(yùn)算定點(diǎn)乘法運(yùn)算 (理解)(理解) 2.4 定點(diǎn)除法運(yùn)算定點(diǎn)除法運(yùn)算 (理解)(理解) 2.5 定點(diǎn)運(yùn)算器的組成定點(diǎn)運(yùn)算器的組成 (了解)(了解) 2.6 浮點(diǎn)運(yùn)算方法和浮點(diǎn)運(yùn)算器浮點(diǎn)運(yùn)算方法和浮點(diǎn)運(yùn)算器(掌握)(掌握) 2021年6月22日星期二3 學(xué)習(xí)要求學(xué)習(xí)要求 l掌握定點(diǎn)和浮點(diǎn)數(shù)的表示方法,表示范圍;掌握定點(diǎn)和浮點(diǎn)數(shù)的表示方法,表示范圍; l掌握

2、定點(diǎn)數(shù)的補(bǔ)碼加減法、常用的乘除法運(yùn)算方法;掌握定點(diǎn)數(shù)的補(bǔ)碼加減法、常用的乘除法運(yùn)算方法; l掌握浮點(diǎn)數(shù)的加減運(yùn)算方法;掌握浮點(diǎn)數(shù)的加減運(yùn)算方法; l掌握數(shù)據(jù)校驗(yàn)的方法;掌握數(shù)據(jù)校驗(yàn)的方法; l理解溢出判斷方法;理解溢出判斷方法; l清楚運(yùn)算器部件的組成結(jié)構(gòu)及設(shè)計(jì)方法。清楚運(yùn)算器部件的組成結(jié)構(gòu)及設(shè)計(jì)方法。 2021年6月22日星期二4 2.0 數(shù)據(jù)的類(lèi)型(數(shù)據(jù)的類(lèi)型(1/2) l按數(shù)制分:按數(shù)制分: 十進(jìn)制:在微機(jī)中直接運(yùn)算困難;十進(jìn)制:在微機(jī)中直接運(yùn)算困難; 二進(jìn)制:占存儲(chǔ)空間少,硬件上易于實(shí)現(xiàn),易于運(yùn)算;二進(jìn)制:占存儲(chǔ)空間少,硬件上易于實(shí)現(xiàn),易于運(yùn)算; 十六進(jìn)制:方便觀察和使用;十六進(jìn)制:方

3、便觀察和使用; 二二-十進(jìn)制:十進(jìn)制:4位二進(jìn)制數(shù)表示位二進(jìn)制數(shù)表示1位十進(jìn)制數(shù),轉(zhuǎn)換簡(jiǎn)單。位十進(jìn)制數(shù),轉(zhuǎn)換簡(jiǎn)單。 l按數(shù)據(jù)格式分:按數(shù)據(jù)格式分: 真值:沒(méi)有經(jīng)過(guò)編碼的直觀數(shù)據(jù)表示方式,其值可帶正負(fù)號(hào),真值:沒(méi)有經(jīng)過(guò)編碼的直觀數(shù)據(jù)表示方式,其值可帶正負(fù)號(hào), 任何數(shù)制均可;任何數(shù)制均可; 機(jī)器數(shù):符號(hào)化后的數(shù)值機(jī)器數(shù):符號(hào)化后的數(shù)值(包括正負(fù)號(hào)的表示包括正負(fù)號(hào)的表示),一般位數(shù)固定,一般位數(shù)固定 (8、16、32),不能隨便忽略任何位置上的,不能隨便忽略任何位置上的0或或1; 2021年6月22日星期二5 2.0 數(shù)據(jù)的類(lèi)型(數(shù)據(jù)的類(lèi)型(2/2) l按數(shù)據(jù)的表示范圍分:按數(shù)據(jù)的表示范圍分: 定點(diǎn)

4、數(shù):小數(shù)點(diǎn)位置固定,數(shù)據(jù)表示范圍??;定點(diǎn)數(shù):小數(shù)點(diǎn)位置固定,數(shù)據(jù)表示范圍??; 浮點(diǎn)數(shù):小數(shù)點(diǎn)位置不固定,數(shù)據(jù)表示范圍較大。浮點(diǎn)數(shù):小數(shù)點(diǎn)位置不固定,數(shù)據(jù)表示范圍較大。 l按能否表示負(fù)數(shù)分:按能否表示負(fù)數(shù)分: 無(wú)符號(hào)數(shù):所有均為表示數(shù)值,直接用二進(jìn)制數(shù)表示;無(wú)符號(hào)數(shù):所有均為表示數(shù)值,直接用二進(jìn)制數(shù)表示; 有符號(hào)數(shù):有正負(fù)之分,最高位為符號(hào)位,其余位表有符號(hào)數(shù):有正負(fù)之分,最高位為符號(hào)位,其余位表 示數(shù)值。示數(shù)值。 u按編碼不同又可分為原碼、反碼、補(bǔ)碼、移碼按編碼不同又可分為原碼、反碼、補(bǔ)碼、移碼 2021年6月22日星期二6 2.1 數(shù)據(jù)與文字的表示方法數(shù)據(jù)與文字的表示方法 l2.1.1 數(shù)據(jù)

5、格式數(shù)據(jù)格式 l2.1.2 數(shù)的機(jī)器碼表示數(shù)的機(jī)器碼表示 l2.1.1 數(shù)據(jù)格式數(shù)據(jù)格式 l2.1.3 字符與字符串的表示方法字符與字符串的表示方法 l2.1.4 漢字的表示方法漢字的表示方法 l2.1.5 校驗(yàn)碼校驗(yàn)碼 2021年6月22日星期二7 l定點(diǎn)數(shù):小數(shù)點(diǎn)固定在某一位置的數(shù)據(jù);定點(diǎn)數(shù):小數(shù)點(diǎn)固定在某一位置的數(shù)據(jù); 純小數(shù):純小數(shù): u表示形式表示形式 有符號(hào)數(shù)有符號(hào)數(shù) x=xSx-1x-2x-n 0 |x|1-2-n ;xs為符號(hào)位為符號(hào)位 無(wú)符號(hào)數(shù)無(wú)符號(hào)數(shù) x=x0 x-1x-2x-n 0 x 1-2-n ;xs為符號(hào)位為符號(hào)位 u數(shù)據(jù)表示范圍數(shù)據(jù)表示范圍 0.00= 0 |x|

6、 1-2-n = 0.11 純整數(shù):純整數(shù): u表示形式表示形式 有符號(hào)數(shù)有符號(hào)數(shù) x=x s x n-1 x 1 x 0 |x|2n-1 ;xs為符號(hào)位為符號(hào)位 無(wú)符號(hào)數(shù)無(wú)符號(hào)數(shù) x=x n x n-1 x 1 x 0 0 x2n+1-1 ;xn為數(shù)值位為數(shù)值位 l注意:小數(shù)點(diǎn)的位置是機(jī)器約定好的,并沒(méi)有實(shí)際的保存。注意:小數(shù)點(diǎn)的位置是機(jī)器約定好的,并沒(méi)有實(shí)際的保存。 x0 x-1x-2x-3 x-n xnxn-1xn-2x1x0 2.1.1 數(shù)據(jù)格式數(shù)據(jù)格式定點(diǎn)數(shù)定點(diǎn)數(shù) 設(shè)采用設(shè)采用n+1位數(shù)據(jù)位數(shù)據(jù) 2021年6月22日星期二8 定點(diǎn)機(jī)的特點(diǎn)定點(diǎn)機(jī)的特點(diǎn) l所能表示的數(shù)據(jù)范圍小所能表示的

7、數(shù)據(jù)范圍小 l使用不方便,運(yùn)算精度較低使用不方便,運(yùn)算精度較低 l存儲(chǔ)單元利用率低存儲(chǔ)單元利用率低 2021年6月22日星期二9 2.1.2 數(shù)的機(jī)器碼表示數(shù)的機(jī)器碼表示 l重點(diǎn):重點(diǎn): 1、原碼、補(bǔ)碼、移碼的表示形式、原碼、補(bǔ)碼、移碼的表示形式 2、補(bǔ)碼的定義、補(bǔ)碼的定義 3、原碼、補(bǔ)碼、移碼的表示范圍、原碼、補(bǔ)碼、移碼的表示范圍 2021年6月22日星期二10 1、原碼表示法、原碼表示法定義定義 l定義:定義: 定點(diǎn)小數(shù):定點(diǎn)小數(shù):x原 原 定點(diǎn)整數(shù):定點(diǎn)整數(shù):x原 原 l舉例:舉例: +0.110 原 原 0.110 -0.110原 原 1 - (-0.110) = 1.110 +110

8、原 原 0110 -110原 原 23- (-110) 1000 +110 = 1110 x1 x 0 1- x=1+|x| 0 x -1 x2n x 0 2n- x=2n+|x| 0 x -2n 實(shí)際機(jī)器中保存時(shí)實(shí)際機(jī)器中保存時(shí) 并不保存小數(shù)點(diǎn)并不保存小數(shù)點(diǎn) xnxn-1xn-2x1x0 2021年6月22日星期二11 1、原碼表示法、原碼表示法特點(diǎn)特點(diǎn) l0有兩種表示法有兩種表示法 +0原 原 = 0000 ; -0原原 = 1000 l數(shù)據(jù)表示范圍數(shù)據(jù)表示范圍 定點(diǎn)小數(shù):定點(diǎn)小數(shù):-1X1 定點(diǎn)整數(shù)定點(diǎn)整數(shù): -2nX2n (若數(shù)值位(若數(shù)值位n=3即:即:-8X x 0 2+x = 2

9、 - |x| 0 x -1 x 2n x 0 2n+1+x = 2n+1-|x| 0 x -2n x為為n+1位位 (mod 2) (mod 2n+1) 實(shí)際機(jī)器中保存時(shí)實(shí)際機(jī)器中保存時(shí) 并不保存小數(shù)點(diǎn)并不保存小數(shù)點(diǎn) xnxn-1xn-2x1x0 2021年6月22日星期二16 2、補(bǔ)碼表示法、補(bǔ)碼表示法特點(diǎn)特點(diǎn) l0有唯一的表示法有唯一的表示法 -0補(bǔ) 補(bǔ) 24+(-0 ) mod 24 0000 +0補(bǔ) 補(bǔ) l數(shù)據(jù)表示范圍數(shù)據(jù)表示范圍 定點(diǎn)小數(shù):定點(diǎn)小數(shù):-1X1 定點(diǎn)整數(shù)定點(diǎn)整數(shù): -2nX2n (若(若n=3,則,則-8X x -2n l與與x補(bǔ) 補(bǔ)的區(qū)別: 的區(qū)別:符號(hào)位相反符號(hào)位相

10、反 l優(yōu)點(diǎn):優(yōu)點(diǎn): 可以比較直觀地判斷兩個(gè)數(shù)據(jù)的大?。豢梢员容^直觀地判斷兩個(gè)數(shù)據(jù)的大??; u浮點(diǎn)數(shù)運(yùn)算時(shí),容易進(jìn)行對(duì)階操作;浮點(diǎn)數(shù)運(yùn)算時(shí),容易進(jìn)行對(duì)階操作; 表示浮點(diǎn)數(shù)階碼時(shí),容易判斷是否下溢;表示浮點(diǎn)數(shù)階碼時(shí),容易判斷是否下溢; u當(dāng)階碼為全當(dāng)階碼為全0時(shí),浮點(diǎn)數(shù)下溢。時(shí),浮點(diǎn)數(shù)下溢。 真值真值補(bǔ)碼補(bǔ)碼移碼移碼 -810000000 -710010001 -610100010 000001000 +100011001 +701111111 4位補(bǔ)碼與移碼位補(bǔ)碼與移碼 xnxn-1xn-2x1x0 2021年6月22日星期二22 原、補(bǔ)、移碼的編碼形式原、補(bǔ)、移碼的編碼形式 l正數(shù):正數(shù): 原

11、、補(bǔ)碼的編碼完全相同;原、補(bǔ)碼的編碼完全相同; 補(bǔ)碼和移碼的符號(hào)位相反,數(shù)值位相同;補(bǔ)碼和移碼的符號(hào)位相反,數(shù)值位相同; l負(fù)數(shù):負(fù)數(shù): 原碼:原碼: 符號(hào)位為符號(hào)位為1 數(shù)值部分與真值的絕對(duì)值相同數(shù)值部分與真值的絕對(duì)值相同 補(bǔ)碼:補(bǔ)碼: 符號(hào)位為符號(hào)位為1 數(shù)值部分與原碼各位相反,且末位加數(shù)值部分與原碼各位相反,且末位加1 移碼:移碼: 符號(hào)位與補(bǔ)碼相反,數(shù)值位與補(bǔ)碼相同符號(hào)位與補(bǔ)碼相反,數(shù)值位與補(bǔ)碼相同 2021年6月22日星期二23 課本課本P22例例6 以定點(diǎn)整數(shù)為例以定點(diǎn)整數(shù)為例,用數(shù)軸形式說(shuō)明原碼、反碼、用數(shù)軸形式說(shuō)明原碼、反碼、 補(bǔ)碼、移碼表示范圍和可能的數(shù)碼組合情況。補(bǔ)碼、移碼

12、表示范圍和可能的數(shù)碼組合情況。 2021年6月22日星期二242021年6月22日星期二24 課本課本P22例例7 將十進(jìn)制真值將十進(jìn)制真值(127,1,0,1,127)列表列表 表示成二進(jìn)制數(shù)及原碼、反碼、補(bǔ)碼、移碼值。表示成二進(jìn)制數(shù)及原碼、反碼、補(bǔ)碼、移碼值。 十進(jìn)制真十進(jìn)制真 值值 二進(jìn)制真值二進(jìn)制真值原碼表示原碼表示反碼表示反碼表示補(bǔ)碼表示補(bǔ)碼表示移碼表示移碼表示 -127-111 11111111 11111000 00001000 00010000 0001 -1-000 00011000 00011111 11101111 11110111 1111 0 +000 0000000

13、0 00000000 0000 0000 00001000 0000 -000 00001000 00001111 1111 +1+000 00010000 00010000 00010000 00011000 0001 +127+111 11110111 11110111 11110111 11111111 1111 符號(hào)位符號(hào)位 +0;- 1 數(shù)值位數(shù)值位 各位取反各位取反 數(shù)值位數(shù)值位 末位加末位加1 符號(hào)位符號(hào)位(正負(fù)數(shù)正負(fù)數(shù)) 取反取反 負(fù)數(shù)時(shí)負(fù)數(shù)時(shí) 2021年6月22日星期二25 P22例例8 設(shè)機(jī)器字長(zhǎng)設(shè)機(jī)器字長(zhǎng)16位,定點(diǎn)表示,尾數(shù)位,定點(diǎn)表示,尾數(shù)15位,數(shù)符位,數(shù)符1位,問(wèn)

14、:位,問(wèn): (1)定點(diǎn)原碼整數(shù)表示時(shí),最大正數(shù)是多少?最小負(fù)數(shù)是多少?定點(diǎn)原碼整數(shù)表示時(shí),最大正數(shù)是多少?最小負(fù)數(shù)是多少? (2)定點(diǎn)原碼小數(shù)表示時(shí),最大正數(shù)是多少?最小負(fù)數(shù)是多少?定點(diǎn)原碼小數(shù)表示時(shí),最大正數(shù)是多少?最小負(fù)數(shù)是多少? 0111 1111 1111 1111 1111 1111 1111 1111 0111 1111 1111 1111 1111 1111 1111 1111 (215-1) = +32767 -(215-1) = -32767 (1-2-15) = +(1-1/32768) -(1-2-15) = -(1-1/32768) l定點(diǎn)原碼整數(shù)定點(diǎn)原碼整數(shù) 最大正數(shù)

15、最大正數(shù) 最小負(fù)數(shù)最小負(fù)數(shù) l定點(diǎn)原碼小數(shù)定點(diǎn)原碼小數(shù) 最大正數(shù)最大正數(shù) 最小負(fù)數(shù)最小負(fù)數(shù) 2021年6月22日星期二26 2.1.1 數(shù)據(jù)格式數(shù)據(jù)格式浮點(diǎn)數(shù)浮點(diǎn)數(shù) l浮點(diǎn)數(shù):小數(shù)點(diǎn)位置可變,形如浮點(diǎn)數(shù):小數(shù)點(diǎn)位置可變,形如科學(xué)計(jì)數(shù)法科學(xué)計(jì)數(shù)法中的數(shù)據(jù)表示。中的數(shù)據(jù)表示。 l浮點(diǎn)數(shù)格式定義:浮點(diǎn)數(shù)格式定義: N= Re M M:尾數(shù):尾數(shù)(mantissa) ,是一個(gè),是一個(gè)純小數(shù)純小數(shù),表示數(shù)據(jù)的全部有效,表示數(shù)據(jù)的全部有效 數(shù)位,決定著數(shù)值的精度;數(shù)位,決定著數(shù)值的精度; R:基數(shù):基數(shù)(radix) ,可以取,可以取2、8、10、16,表示當(dāng)前的數(shù)制;,表示當(dāng)前的數(shù)制; u微機(jī)中,一般默

16、認(rèn)為微機(jī)中,一般默認(rèn)為2,隱含表示。,隱含表示。 e: 階碼階碼(exponent) ,是一個(gè),是一個(gè)整數(shù)整數(shù),用于指出小數(shù)點(diǎn)在該數(shù),用于指出小數(shù)點(diǎn)在該數(shù) 中的位置,中的位置,決定著數(shù)據(jù)數(shù)值的大小決定著數(shù)據(jù)數(shù)值的大小。 l機(jī)器數(shù)的一般表示形式機(jī)器數(shù)的一般表示形式 階符階符階碼階碼數(shù)符數(shù)符尾數(shù)尾數(shù) 數(shù)符數(shù)符階符階符階碼階碼尾數(shù)尾數(shù) 2021年6月22日星期二27 科學(xué)計(jì)數(shù)法的表示科學(xué)計(jì)數(shù)法的表示 l一個(gè)十進(jìn)制數(shù)可以表示成不同的形式:一個(gè)十進(jìn)制數(shù)可以表示成不同的形式: l同理,一個(gè)二進(jìn)制數(shù)也可以有多種表示:同理,一個(gè)二進(jìn)制數(shù)也可以有多種表示: 33 10 ()123.456123456 100.1

17、23456 10N 100100 2 ()1101.001111010011 20.1101.0011 2N 2021年6月22日星期二28 浮點(diǎn)數(shù)規(guī)格化浮點(diǎn)數(shù)規(guī)格化 l浮點(diǎn)數(shù)的表示浮點(diǎn)數(shù)的表示 1.1120=0.11121=11.12-1 機(jī)器數(shù)的表示不同,不利于運(yùn)算機(jī)器數(shù)的表示不同,不利于運(yùn)算 l規(guī)格化的目的規(guī)格化的目的 保證浮點(diǎn)數(shù)表示的唯一性;保證浮點(diǎn)數(shù)表示的唯一性; 保留更多地有效數(shù)字,提高運(yùn)算的精度。保留更多地有效數(shù)字,提高運(yùn)算的精度。 l規(guī)格化要求規(guī)格化要求 1/R|尾數(shù)尾數(shù)|1; l規(guī)格化處理:規(guī)格化處理: 尾數(shù)向左移尾數(shù)向左移n位位(小數(shù)點(diǎn)右移小數(shù)點(diǎn)右移),同時(shí)階碼減,同時(shí)階碼

18、減n; 尾數(shù)向右移尾數(shù)向右移n位位(小數(shù)點(diǎn)左移小數(shù)點(diǎn)左移),同時(shí)階碼加,同時(shí)階碼加n。 規(guī)格化規(guī)格化 右規(guī)右規(guī) 左規(guī)左規(guī) 2021年6月22日星期二29 浮點(diǎn)數(shù)的規(guī)格化浮點(diǎn)數(shù)的規(guī)格化 l尾數(shù)用原碼表示時(shí)尾數(shù)用原碼表示時(shí) 尾數(shù)最高數(shù)值位為尾數(shù)最高數(shù)值位為1; 尾數(shù)形如尾數(shù)形如0.1(正);或(正);或1.1(負(fù));(負(fù)); 例如,例如,0.01125要規(guī)格化則變?yōu)橐?guī)格化則變?yōu)?.1124; 0.01125要規(guī)格化則變?yōu)橐?guī)格化則變?yōu)?.1124; l尾數(shù)用補(bǔ)碼表示時(shí)尾數(shù)用補(bǔ)碼表示時(shí) 尾數(shù)最高數(shù)值位和尾數(shù)符號(hào)位相反;尾數(shù)最高數(shù)值位和尾數(shù)符號(hào)位相反; 尾數(shù)形如尾數(shù)形如0.1(正);或(正);或1.

19、0(負(fù))(負(fù)) 例如,例如,0.01125要規(guī)格化,則變?yōu)橐?guī)格化,則變?yōu)?.1124; 0.01125要規(guī)格化,則變?yōu)橐?guī)格化,則變?yōu)?.0124; 2021年6月22日星期二30 浮點(diǎn)數(shù)的數(shù)據(jù)表示范圍浮點(diǎn)數(shù)的數(shù)據(jù)表示范圍 0最大最大 負(fù)數(shù)負(fù)數(shù) 最小最小 正數(shù)正數(shù) 最小最小 負(fù)數(shù)負(fù)數(shù) 最大最大 正數(shù)正數(shù) 下溢區(qū)下溢區(qū)上溢區(qū)上溢區(qū)上溢區(qū)上溢區(qū)負(fù)數(shù)區(qū)負(fù)數(shù)區(qū)正數(shù)區(qū)正數(shù)區(qū) 尾數(shù)尾數(shù)負(fù)的最小值負(fù)的最小值負(fù)的最大值負(fù)的最大值 正的最小值正的最小值 正的最大值正的最大值 階碼階碼正的最大值正的最大值負(fù)的最小值負(fù)的最小值 負(fù)的最小值負(fù)的最小值 正的最大值正的最大值 l浮點(diǎn)數(shù)的溢出:階碼溢出浮點(diǎn)數(shù)的溢出:階碼

20、溢出 上溢:階碼大于所能表示的最大值;上溢:階碼大于所能表示的最大值; 下溢:階碼小于所能表示的最小值;下溢:階碼小于所能表示的最小值; l機(jī)器零:機(jī)器零: 尾數(shù)為尾數(shù)為 0,或階碼小于所能表示的最小值;,或階碼小于所能表示的最小值; 2021年6月22日星期二31 浮點(diǎn)數(shù)的最值浮點(diǎn)數(shù)的最值 非規(guī)格化數(shù)據(jù)非規(guī)格化數(shù)據(jù)規(guī)格化數(shù)據(jù)規(guī)格化數(shù)據(jù) 真值真值機(jī)器數(shù)機(jī)器數(shù)機(jī)器數(shù)機(jī)器數(shù)真值真值 最小最小 負(fù)數(shù)負(fù)數(shù) 最大最大 負(fù)數(shù)負(fù)數(shù) 最小最小 正數(shù)正數(shù) 最大最大 正數(shù)正數(shù) 設(shè)浮點(diǎn)數(shù)格式為設(shè)浮點(diǎn)數(shù)格式為 1位階符位階符m位階碼位階碼1位數(shù)符位數(shù)符n位尾數(shù)位尾數(shù) 移碼表示移碼表示-2m,+(2m-1)補(bǔ)碼表示補(bǔ)碼

21、表示-1,+(1-2-n) -12+( 2m-1 ) -2-n2-2m +2-n2-2m +(1-2-n)2+(2m-1) 1 111;1 0000 0 000;1 1111 0 000;0 0001 1 111;0 1111 同左同左同左同左 0 000;1 0111 -(2-1+2-n)2-2m +2-12-2m 同左同左同左同左 0 000;0 1000 2021年6月22日星期二32 0 1 1 0 1 1 1 5 1 9 【例例1】設(shè)浮點(diǎn)數(shù)的階碼設(shè)浮點(diǎn)數(shù)的階碼6位(含符號(hào)位),尾數(shù)位(含符號(hào)位),尾數(shù) 為為10位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù)位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾

22、數(shù) 采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。 l最大正數(shù)最大正數(shù) 最大正數(shù)為最大正數(shù)為0.11120111 即(即(12 9) )231 該浮點(diǎn)數(shù)即為該浮點(diǎn)數(shù)即為規(guī)格化規(guī)格化數(shù)形式;數(shù)形式; 2021年6月22日星期二33 【例例1】設(shè)浮點(diǎn)數(shù)的階碼設(shè)浮點(diǎn)數(shù)的階碼6位(含符號(hào)位),尾數(shù)位(含符號(hào)位),尾數(shù) 為為10位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù)位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù) 采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。 l 最小正數(shù)最小正數(shù) 非規(guī)格化數(shù)形式非規(guī)格化數(shù)形式 u最小正數(shù)為最小正數(shù)為0.0012100 u即即2

23、 9 2( (25)= 29 2-32 規(guī)格化數(shù)形式規(guī)格化數(shù)形式 u最小正數(shù)為最小正數(shù)為0.12100 u2 1 2( (25) 2 33 1 0 0 0 1 00 1 5 1 9 1 0 0 0 0 01 1 5 1 9 2021年6月22日星期二34 【例例1】設(shè)浮點(diǎn)數(shù)的階碼設(shè)浮點(diǎn)數(shù)的階碼6位(含符號(hào)位),尾數(shù)位(含符號(hào)位),尾數(shù) 為為10位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù)位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù) 采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。 l最小負(fù)數(shù)最小負(fù)數(shù) 最小負(fù)數(shù)為最小負(fù)數(shù)為0.112011 即(即(12 9) )2( (251)= (

24、 (12 9) ) 231 該浮點(diǎn)數(shù)即為該浮點(diǎn)數(shù)即為規(guī)格化規(guī)格化數(shù)形式;數(shù)形式; 0 1 1 1 1 1 1 m 1 n 2021年6月22日星期二35 【例例1】設(shè)浮點(diǎn)數(shù)的階碼設(shè)浮點(diǎn)數(shù)的階碼6位(含符號(hào)位),尾數(shù)位(含符號(hào)位),尾數(shù) 為為10位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù)位(含符號(hào)位),階碼采用補(bǔ)碼表示,尾數(shù) 采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。采用原碼表示,分析其浮點(diǎn)數(shù)表示范圍。 l 最大負(fù)數(shù)最大負(fù)數(shù) 非規(guī)格化數(shù)形式非規(guī)格化數(shù)形式 u最大負(fù)數(shù)為最大負(fù)數(shù)為0.0012100 u即即 2 9 2( (25)= 2 9 2-32 規(guī)格化數(shù)形式規(guī)格化數(shù)形式 u最大負(fù)數(shù)為最大負(fù)數(shù)為0. 12

25、100 u即即 2 1 2( (25)= 2-1 2 32 1 0 0 1 1 00 1 m 1 n 1 0 0 1 0 01 1 m 1 n 2021年6月22日星期二36 【例例2】設(shè)浮點(diǎn)數(shù)的階碼設(shè)浮點(diǎn)數(shù)的階碼6位(含符號(hào)位),尾數(shù)位(含符號(hào)位),尾數(shù) 為為10位(含符號(hào)位),階碼和尾數(shù)均采用補(bǔ)碼表位(含符號(hào)位),階碼和尾數(shù)均采用補(bǔ)碼表 示,分析其規(guī)格化浮點(diǎn)數(shù)表示范圍。示,分析其規(guī)格化浮點(diǎn)數(shù)表示范圍。 l 最大正數(shù)最大正數(shù) 階碼最大、尾數(shù)最大階碼最大、尾數(shù)最大 最大正數(shù)為最大正數(shù)為0.1112111 (12 9) )231 l 最小正數(shù)最小正數(shù) 最小正數(shù)為最小正數(shù)為0.10002 32 即

26、即2-322 1 2-33 注意:注意:不是不是 u因?yàn)橐驗(yàn)?.01 2-32不是規(guī)格化數(shù)。不是規(guī)格化數(shù)。 0 1 1 0 1 1 1 5 1 9 1 0 0 0 10 00 1 5 1 9 1 0 0 0 0 01 1 5 1 9 2021年6月22日星期二37 【例例2】設(shè)浮點(diǎn)數(shù)的階碼設(shè)浮點(diǎn)數(shù)的階碼6位(含符號(hào)位),尾數(shù)位(含符號(hào)位),尾數(shù) 為為10位(含符號(hào)位),階碼和尾數(shù)均采用補(bǔ)碼表位(含符號(hào)位),階碼和尾數(shù)均采用補(bǔ)碼表 示,分析其規(guī)格化浮點(diǎn)數(shù)表示范圍。示,分析其規(guī)格化浮點(diǎn)數(shù)表示范圍。 l 最小的負(fù)數(shù)最小的負(fù)數(shù) 最小負(fù)數(shù)為最小負(fù)數(shù)為1.000231 即即231(1)= 231 l 最大

27、的負(fù)數(shù)最大的負(fù)數(shù) 最大負(fù)數(shù)為最大負(fù)數(shù)為0.10012 32 即(即( 2 9+ 21 ) )2 32 注意:因有規(guī)格化要求,不是注意:因有規(guī)格化要求,不是 0 1 1 1 0 0 1 5 1 9 1 0 0 1 0 1 1 1 5 1 9 1 0 0 1 1 1 1 1 5 1 9 2021年6月22日星期二38 浮點(diǎn)數(shù)的浮點(diǎn)數(shù)的IEEE754標(biāo)準(zhǔn)表示標(biāo)準(zhǔn)表示 lIEEE(Institute of Electrical and Electronics Engineers) 美國(guó)電氣及電子工程師學(xué)會(huì)美國(guó)電氣及電子工程師學(xué)會(huì) IEEE是一家總部在美國(guó)的工程技術(shù)和電子專(zhuān)家的組織;是一家總部在美國(guó)的工

28、程技術(shù)和電子專(zhuān)家的組織; IEEE致力于電氣、電子、計(jì)算機(jī)工程和與科學(xué)有關(guān)的領(lǐng)域致力于電氣、電子、計(jì)算機(jī)工程和與科學(xué)有關(guān)的領(lǐng)域 的開(kāi)發(fā)和研究,也是計(jì)算機(jī)網(wǎng)絡(luò)標(biāo)準(zhǔn)的主要制定者。的開(kāi)發(fā)和研究,也是計(jì)算機(jī)網(wǎng)絡(luò)標(biāo)準(zhǔn)的主要制定者。 l為便于軟件移植,按照為便于軟件移植,按照 IEEE754 標(biāo)準(zhǔn),實(shí)際機(jī)器內(nèi)標(biāo)準(zhǔn),實(shí)際機(jī)器內(nèi)32位浮點(diǎn)位浮點(diǎn) 數(shù)和數(shù)和64位浮點(diǎn)數(shù)的標(biāo)準(zhǔn)格式如下:位浮點(diǎn)數(shù)的標(biāo)準(zhǔn)格式如下: 022233031 SEM 2323位尾數(shù),僅為數(shù)值部分位尾數(shù),僅為數(shù)值部分8 8位階碼,包括階符位階碼,包括階符1 1位數(shù)符位數(shù)符 3232位浮點(diǎn)數(shù)位浮點(diǎn)數(shù) 051526263 SEM 6464位浮點(diǎn)數(shù)位

29、浮點(diǎn)數(shù) 2021年6月22日星期二39 32位浮點(diǎn)數(shù)的位浮點(diǎn)數(shù)的IEEE754 標(biāo)準(zhǔn)表示標(biāo)準(zhǔn)表示 l數(shù)符數(shù)符S:表示浮點(diǎn)數(shù)的符號(hào),占表示浮點(diǎn)數(shù)的符號(hào),占1 1位,位,0 0正數(shù)、正數(shù)、1 1負(fù)數(shù);負(fù)數(shù); l尾數(shù)尾數(shù)M:2323位,原碼純小數(shù)表示,小數(shù)點(diǎn)在尾數(shù)域的最前面;位,原碼純小數(shù)表示,小數(shù)點(diǎn)在尾數(shù)域的最前面; 由于原碼表示的規(guī)格化浮點(diǎn)數(shù)要求,由于原碼表示的規(guī)格化浮點(diǎn)數(shù)要求,最高數(shù)值位始終為最高數(shù)值位始終為1,因,因 此該標(biāo)準(zhǔn)中隱藏最高數(shù)值位此該標(biāo)準(zhǔn)中隱藏最高數(shù)值位(1),尾數(shù)的實(shí)際值為,尾數(shù)的實(shí)際值為1.M; l階碼階碼E:8 8 位,采用有偏移值的移碼表示;位,采用有偏移值的移碼表示;

30、移移127碼,即碼,即E=e+127,E的的8位二進(jìn)制數(shù)即為移位二進(jìn)制數(shù)即為移127碼的編碼;碼的編碼; l浮點(diǎn)數(shù)的真值:浮點(diǎn)數(shù)的真值:N=(-1)S(1.M)2E-127 數(shù)符數(shù)符S階碼階碼E尾數(shù)尾數(shù)M 2021年6月22日星期二40 IEEE754 標(biāo)準(zhǔn)格式標(biāo)準(zhǔn)格式 (64位格式)位格式) 其真值表示為:其真值表示為: x=(1)S(1.M)2E 1023 e E1023 2021年6月22日星期二41 IEEE754 標(biāo)準(zhǔn)的數(shù)據(jù)表示標(biāo)準(zhǔn)的數(shù)據(jù)表示 lIEEE754 標(biāo)準(zhǔn)中的階碼標(biāo)準(zhǔn)中的階碼E 正零、負(fù)零正零、負(fù)零 uE與與M均為零,正負(fù)之分由數(shù)據(jù)符號(hào)確定;均為零,正負(fù)之分由數(shù)據(jù)符號(hào)確定;

31、 正無(wú)窮、負(fù)無(wú)窮正無(wú)窮、負(fù)無(wú)窮 uE為全為全1,M為全零,正負(fù)之分由數(shù)據(jù)符號(hào)確定;為全零,正負(fù)之分由數(shù)據(jù)符號(hào)確定; 階碼階碼E的其余值(的其余值(0000 00011111 1110)為規(guī)格化數(shù)據(jù);)為規(guī)格化數(shù)據(jù); u真正的指數(shù)真正的指數(shù)e的范圍為的范圍為-126+127 E=0000 0000,M=0000 0000 E=1111 1111,M=0000 0000 0000 0000 1111 1111 2021年6月22日星期二42 IEEE754 標(biāo)準(zhǔn)對(duì)特殊數(shù)據(jù)的表示標(biāo)準(zhǔn)對(duì)特殊數(shù)據(jù)的表示 符號(hào)位符號(hào)位S階碼階碼E尾數(shù)尾數(shù)M數(shù)值數(shù)值N 0/10=00 0/100(-1)S(0.M)2-12

32、6 0/112540(-1)S(1.M)2E-127 0/12550NaN(非數(shù)值)(非數(shù)值) 0/1255=0(-1)S(無(wú)窮大無(wú)窮大) 2021年6月22日星期二43 課本課本P18 例例1 l例例1 若浮點(diǎn)數(shù)的若浮點(diǎn)數(shù)的754標(biāo)準(zhǔn)存儲(chǔ)格式為標(biāo)準(zhǔn)存儲(chǔ)格式為(41360000)16,求其浮,求其浮 點(diǎn)數(shù)的十進(jìn)制數(shù)值。點(diǎn)數(shù)的十進(jìn)制數(shù)值。 l解:解: (41360000)16 = 0100 0001 0011 0110 0000 0000 0000 0000 指數(shù)指數(shù)e=E-127= 1000 0010 0111 1111=0000 0011=3 尾數(shù)尾數(shù)1.M=1.011 0110 0000

33、0000 0000 0000=1.011011 浮點(diǎn)數(shù)浮點(diǎn)數(shù) N =(-1)S(1.M)2e = (-1)0(1. 011011)23 = (11.375)10 數(shù)符數(shù)符S階碼階碼E尾數(shù)尾數(shù)M 2021年6月22日星期二44 課本課本P18 例例2 l例例2 將將(20.59375)10轉(zhuǎn)換成轉(zhuǎn)換成754標(biāo)準(zhǔn)的標(biāo)準(zhǔn)的32位浮點(diǎn)數(shù)的二進(jìn)制存位浮點(diǎn)數(shù)的二進(jìn)制存 儲(chǔ)格式。儲(chǔ)格式。 l解:解: (20.59375)10(10100.10011)2 將尾數(shù)規(guī)范為將尾數(shù)規(guī)范為1.M的形式:的形式: 10100.100111.01001001124 e 4 可得:可得:M 010010011 S 0 E 4

34、1271311000 0011 故,故,32位浮點(diǎn)數(shù)的位浮點(diǎn)數(shù)的754標(biāo)準(zhǔn)格式為:標(biāo)準(zhǔn)格式為: 0100 0001 1010 0100 1100 0000 0000 0000(41A4C000)16 2021年6月22日星期二45 單精度浮點(diǎn)數(shù)與雙精度浮點(diǎn)數(shù)單精度浮點(diǎn)數(shù)與雙精度浮點(diǎn)數(shù) l高級(jí)語(yǔ)言的高級(jí)語(yǔ)言的float、double使用的即是使用的即是IEEE754規(guī)定的格式。規(guī)定的格式。 lfloat :32位浮點(diǎn)值,也叫單精度浮點(diǎn)數(shù)(位浮點(diǎn)值,也叫單精度浮點(diǎn)數(shù)(4字節(jié)保存)字節(jié)保存) ldouble:64位浮點(diǎn)值,也叫雙精度浮點(diǎn)數(shù)(位浮點(diǎn)值,也叫雙精度浮點(diǎn)數(shù)(8字節(jié)保存)字節(jié)保存) l單精度

35、浮點(diǎn)數(shù)的例子:?jiǎn)尉雀↑c(diǎn)數(shù)的例子: 1位位 8位位 7位位 8位位 8位位 -1100 0.01 2021年6月22日星期二46 單精度浮點(diǎn)數(shù)與雙精度浮點(diǎn)數(shù)單精度浮點(diǎn)數(shù)與雙精度浮點(diǎn)數(shù) l除除0之外,之外,IEEE754標(biāo)準(zhǔn)中單精度浮點(diǎn)數(shù)所能表示的絕對(duì)值最標(biāo)準(zhǔn)中單精度浮點(diǎn)數(shù)所能表示的絕對(duì)值最 小的規(guī)格化浮點(diǎn)數(shù)的格式為:小的規(guī)格化浮點(diǎn)數(shù)的格式為: S 0000 0001 00000000000000000000000 lV=(-1)S2-126(1.M)= (-1)S2-126(1+0.000) l除除之外,之外,IEEE754標(biāo)準(zhǔn)中單精度浮點(diǎn)數(shù)所能表示的絕對(duì)值標(biāo)準(zhǔn)中單精度浮點(diǎn)數(shù)所能表示的絕對(duì)值

36、最大的規(guī)格化浮點(diǎn)數(shù)的格式為:最大的規(guī)格化浮點(diǎn)數(shù)的格式為: S 1111 1110 11111111111111111111111 lV=(-1)S2+127(1.M)= (-1)S2-126(1+1.111) 2021年6月22日星期二47 求解技巧求解技巧 l例如:將下列十進(jìn)制數(shù)表示成例如:將下列十進(jìn)制數(shù)表示成IEEE754格式的格式的32位浮點(diǎn)數(shù)二進(jìn)位浮點(diǎn)數(shù)二進(jìn) 制存儲(chǔ)形式。制存儲(chǔ)形式。 27/32 11/512 l求解:求解: 27/32=27*(1/32) = (0001 1011)2*2-5 u尾數(shù):尾數(shù):1.1011 ;階碼:階碼:e=-5+4=-1 ,E=e+127=126 uI

37、EEE754數(shù)據(jù):數(shù)據(jù):0 0111 1110 1011 0000 0000 0000 0000 000 11/512= (0000 1011)2*2-9 u尾數(shù):尾數(shù):1.011;階碼:階碼:e=-9+3=-6 ,E=e+127=121 uIEEE754數(shù)據(jù):數(shù)據(jù):0 0111 1001 0110 0000 0000 0000 0000 00 2021年6月22日星期二48 例:將十進(jìn)制數(shù)例:將十進(jìn)制數(shù)-54表示成表示成二進(jìn)制定點(diǎn)數(shù)二進(jìn)制定點(diǎn)數(shù)(16位位)和和浮點(diǎn)數(shù)浮點(diǎn)數(shù) (16位,其中數(shù)值部分位,其中數(shù)值部分10位,階碼部分位,階碼部分4位,階符和數(shù)符各位,階符和數(shù)符各 取取1位位),并寫(xiě)

38、出它在定點(diǎn)機(jī)和浮點(diǎn)機(jī)中的機(jī)器數(shù)形式。,并寫(xiě)出它在定點(diǎn)機(jī)和浮點(diǎn)機(jī)中的機(jī)器數(shù)形式。 l令令 x = -54,則,則x = -110110 l16位定點(diǎn)數(shù)真值表示:位定點(diǎn)數(shù)真值表示: x = -000 0000 0011 0110 定點(diǎn)機(jī)器數(shù)形式定點(diǎn)機(jī)器數(shù)形式 x原 原: : x補(bǔ) 補(bǔ): : l浮點(diǎn)數(shù)規(guī)格化表示:浮點(diǎn)數(shù)規(guī)格化表示:x = -(0.1101100000)2110 浮點(diǎn)機(jī)器數(shù)形式浮點(diǎn)機(jī)器數(shù)形式 x原 原: : x補(bǔ) 補(bǔ): : 非非IEEE754 標(biāo)準(zhǔn)標(biāo)準(zhǔn) 1 000 0000 0011 0110 1 111 1111 1100 1010 0 0110 ; 1 11 0110 0000 0

39、 0110 ; 1 00 1010 0000 2021年6月22日星期二49 最大正數(shù):最大正數(shù): x=1+(1-2-23) 2127 最小正數(shù):最小正數(shù): x=1.0 2-128 最小負(fù)數(shù):最小負(fù)數(shù): x=-1+(1-2-23) 2127 最大負(fù)數(shù):最大負(fù)數(shù): x=-1.0 2-128 課本課本P23例例9 假設(shè)一個(gè)假設(shè)一個(gè)32位非零規(guī)格化位非零規(guī)格化 浮點(diǎn)數(shù)浮點(diǎn)數(shù),真值表示為:,真值表示為: 問(wèn):它所表示的問(wèn):它所表示的規(guī)格化的規(guī)格化的最大正數(shù)、最小正數(shù)、最大負(fù)數(shù)、最大正數(shù)、最小正數(shù)、最大負(fù)數(shù)、 最小負(fù)數(shù)是多少?(尾數(shù)用原碼表示)最小負(fù)數(shù)是多少?(尾數(shù)用原碼表示) 數(shù)符數(shù)符階碼階碼尾數(shù)尾數(shù)

40、01111 1111 1111 1111 1111 1111111 1111 數(shù)符數(shù)符階碼階碼尾數(shù)尾數(shù)00000 0000 0000 0000 0000 0000000 0000 數(shù)符數(shù)符階碼階碼尾數(shù)尾數(shù)11111 1111 1111 1111 1111 1111111 1111 數(shù)符數(shù)符階碼階碼尾數(shù)尾數(shù)10000 0000 0000 0000 0000 0000000 0000 2021年6月22日星期二50 浙江大學(xué)考研試題浙江大學(xué)考研試題 計(jì)算機(jī)儲(chǔ)存程序的特點(diǎn)之一是把數(shù)據(jù)和指令都作為二進(jìn)制信號(hào)計(jì)算機(jī)儲(chǔ)存程序的特點(diǎn)之一是把數(shù)據(jù)和指令都作為二進(jìn)制信號(hào) 看待。今有一計(jì)算機(jī)字長(zhǎng)看待。今有一計(jì)算機(jī)

41、字長(zhǎng)32bit,數(shù)符位是第,數(shù)符位是第31bit;單精度??;單精度浮 點(diǎn)數(shù)格式如圖所示。點(diǎn)數(shù)格式如圖所示。 對(duì)于二進(jìn)制數(shù)對(duì)于二進(jìn)制數(shù)1000 1111 1110 1111 1100 0000 0000 0000 表示一個(gè)補(bǔ)碼整數(shù),其十進(jìn)制值是多少?表示一個(gè)補(bǔ)碼整數(shù),其十進(jìn)制值是多少? 表示一個(gè)無(wú)符號(hào)整數(shù),其十進(jìn)制值是多少?表示一個(gè)無(wú)符號(hào)整數(shù),其十進(jìn)制值是多少? 表示一個(gè)表示一個(gè)IEEE754標(biāo)準(zhǔn)的單精度浮點(diǎn)數(shù),其值是多少?標(biāo)準(zhǔn)的單精度浮點(diǎn)數(shù),其值是多少? 8位位23位位1 31 30 23 22 0 2021年6月22日星期二51 二進(jìn)制數(shù)二進(jìn)制數(shù)1000 1111 1110 1111 110

42、0 0000 0000 0000 表示一個(gè)補(bǔ)碼整數(shù),其十進(jìn)制值是多少?表示一個(gè)補(bǔ)碼整數(shù),其十進(jìn)制值是多少? n作為補(bǔ)碼整數(shù),其對(duì)應(yīng)的原碼是作為補(bǔ)碼整數(shù),其對(duì)應(yīng)的原碼是 1111 0000 0001 0000 0100 0000 0000 0000 n十進(jìn)制值是十進(jìn)制值是 -(230+ 229 +228 + 220 + 214 ) 表示一個(gè)無(wú)符號(hào)整數(shù),其十進(jìn)制值是多少?表示一個(gè)無(wú)符號(hào)整數(shù),其十進(jìn)制值是多少? n作為無(wú)符號(hào)整數(shù),其十進(jìn)制值是作為無(wú)符號(hào)整數(shù),其十進(jìn)制值是 231+ 227+ 226 +225 + 224 + 223+ 222 +221 + 219 +218 + 217 +216 +

43、215 +214 2021年6月22日星期二52 二進(jìn)制數(shù)二進(jìn)制數(shù)1000 1111 1110 1111 1100 0000 0000 0000 作為作為IEEE754標(biāo)準(zhǔn)的單精度浮點(diǎn)數(shù)標(biāo)準(zhǔn)的單精度浮點(diǎn)數(shù) n階碼階碼E是是0001 1111 n指數(shù)指數(shù)e階碼階碼E1270001 11110111 1111 -1100000B-96D n尾數(shù)尾數(shù)M=110 1111 1100 0000 0000 0000 n則則1.M =1. 110 1111 1100 0000 0000 0000 =1.110 1111 11 單精度浮點(diǎn)數(shù)值為:?jiǎn)尉雀↑c(diǎn)數(shù)值為: X (-1)s1.M2e-(1.110 11

44、11 11)2-96 -(0.1110 1111 11)2-95 -(1416-11516-21216-3)2-95 -0.31152-95 2021年6月22日星期二53 2009考研真題考研真題 12.一個(gè)一個(gè)C語(yǔ)言程序在一臺(tái)語(yǔ)言程序在一臺(tái)32位機(jī)器上運(yùn)行。程序中定義了三個(gè)位機(jī)器上運(yùn)行。程序中定義了三個(gè) 變量變量x,y和和z,其中,其中x和和z是是int型,型,y為為short型。當(dāng)型。當(dāng)x=127, y=-9時(shí),執(zhí)行賦值語(yǔ)句時(shí),執(zhí)行賦值語(yǔ)句z=x+y后,后,x、y和和z的值分別是:的值分別是: A.x=0000007FH , y=FFF9H , z=00000076H B.x=00000

45、07FH , y=FFF9H , z=FFFF0076H C.x=0000007FH , y=FFF7H , z=FFFF0076H D.x=0000007FH , y=FFF7H , z=00000076H 2021年6月22日星期二54 2010考研真題考研真題 l14.假定變量假定變量i,f,d數(shù)據(jù)類(lèi)型分別為數(shù)據(jù)類(lèi)型分別為int, float, double(int用補(bǔ)用補(bǔ) 碼表示,碼表示,float和和double用用IEEE754單精度和雙精度浮點(diǎn)數(shù)據(jù)格單精度和雙精度浮點(diǎn)數(shù)據(jù)格 式表示式表示),已知,已知i=785,f=1.5678e3,d=1.5e100,若在,若在32位機(jī)位機(jī) 器

46、中執(zhí)行下列關(guān)系表達(dá)式,則結(jié)果為真的是器中執(zhí)行下列關(guān)系表達(dá)式,則結(jié)果為真的是() (I) i=(int)(float)i (II)f=(float)(int)f (III)f=(float)(double)f (IV)(d+f)-d=f l A. 僅僅I和和II B. 僅僅I和和III l C. 僅僅II和和III D. 僅僅III和和IV 關(guān)鍵是關(guān)鍵是“=” 兩端的數(shù)據(jù)類(lèi)兩端的數(shù)據(jù)類(lèi) 型是否一致!型是否一致! 2021年6月22日星期二55 2.1.1數(shù)據(jù)格式數(shù)據(jù)格式十進(jìn)制數(shù)串的表示方法十進(jìn)制數(shù)串的表示方法 l字符串形式字符串形式 每個(gè)十進(jìn)制每個(gè)十進(jìn)制數(shù)位數(shù)位占用一個(gè)字節(jié);占用一個(gè)字節(jié); 除保

47、存各數(shù)位,還需要指明該數(shù)存放的起始地址和總位數(shù);除保存各數(shù)位,還需要指明該數(shù)存放的起始地址和總位數(shù); 主要用于非數(shù)值計(jì)算的應(yīng)用領(lǐng)域。主要用于非數(shù)值計(jì)算的應(yīng)用領(lǐng)域。 l壓縮的十進(jìn)制數(shù)串形式壓縮的十進(jìn)制數(shù)串形式 采用采用BCD碼表示,一個(gè)字節(jié)可存放兩個(gè)十進(jìn)制數(shù)位;碼表示,一個(gè)字節(jié)可存放兩個(gè)十進(jìn)制數(shù)位; 節(jié)省存儲(chǔ)空間,便于直接完成十進(jìn)制數(shù)的算術(shù)運(yùn)算;節(jié)省存儲(chǔ)空間,便于直接完成十進(jìn)制數(shù)的算術(shù)運(yùn)算; 用特殊的二進(jìn)制編碼表示數(shù)據(jù)正負(fù),如用特殊的二進(jìn)制編碼表示數(shù)據(jù)正負(fù),如1100正、正、1101負(fù)負(fù) 2021年6月22日星期二56 2.1.3 字符與字符串的表示方法字符與字符串的表示方法 lASCII碼碼(

48、美國(guó)國(guó)家信息交換標(biāo)準(zhǔn)字符碼美國(guó)國(guó)家信息交換標(biāo)準(zhǔn)字符碼) 包括包括128個(gè)字符,共需個(gè)字符,共需7位編碼;位編碼; ASCII碼規(guī)定:最高位為碼規(guī)定:最高位為0,余下,余下7位作為位作為128個(gè)字符的編碼。個(gè)字符的編碼。 最高位的作用:奇偶校驗(yàn);擴(kuò)展編碼。最高位的作用:奇偶校驗(yàn);擴(kuò)展編碼。 l字符串字符串 指連續(xù)的一串字符,指連續(xù)的一串字符, 每個(gè)字節(jié)存一個(gè)字符。每個(gè)字節(jié)存一個(gè)字符。 當(dāng)存儲(chǔ)字長(zhǎng)為當(dāng)存儲(chǔ)字長(zhǎng)為2、或、或4個(gè)字節(jié)時(shí),在同一個(gè)存儲(chǔ)單元中個(gè)字節(jié)時(shí),在同一個(gè)存儲(chǔ)單元中; u可按從低位字節(jié)向高位字節(jié)的順序存放字符串的內(nèi)容可按從低位字節(jié)向高位字節(jié)的順序存放字符串的內(nèi)容; u或按從高位字節(jié)向低

49、位字節(jié)的次序順序存放字符串的內(nèi)容。或按從高位字節(jié)向低位字節(jié)的次序順序存放字符串的內(nèi)容。 2021年6月22日星期二57 2.1.4 漢字的表示方法漢字的表示方法 l漢字的輸入編碼漢字的輸入編碼 目的:直接使用西文標(biāo)準(zhǔn)鍵盤(pán)把漢字輸入到計(jì)算機(jī)目的:直接使用西文標(biāo)準(zhǔn)鍵盤(pán)把漢字輸入到計(jì)算機(jī) 。 分類(lèi):主要有數(shù)字編碼、拼音碼分類(lèi):主要有數(shù)字編碼、拼音碼 、字形編碼三類(lèi)。、字形編碼三類(lèi)。 l漢字內(nèi)碼漢字內(nèi)碼 用于漢字信息的存儲(chǔ)、交換、檢索等操作的機(jī)內(nèi)代碼用于漢字信息的存儲(chǔ)、交換、檢索等操作的機(jī)內(nèi)代碼 l漢字字模碼漢字字模碼 用點(diǎn)陣表示的漢字字形代碼,用于漢字的輸出。用點(diǎn)陣表示的漢字字形代碼,用于漢字的輸出

50、。 2021年6月22日星期二58 顯示輸出顯示輸出打印輸出打印輸出 機(jī)內(nèi)碼向字形碼轉(zhuǎn)換機(jī)內(nèi)碼向字形碼轉(zhuǎn)換 機(jī)內(nèi)碼機(jī)內(nèi)碼 輸入碼向機(jī)內(nèi)碼轉(zhuǎn)換輸入碼向機(jī)內(nèi)碼轉(zhuǎn)換 中文編碼中文編碼 字符代碼化(輸入)字符代碼化(輸入) 數(shù)字碼數(shù)字碼 拼音碼拼音碼 字形碼字形碼 2021年6月22日星期二59 漢字字模碼漢字字模碼 精密型精密型4848 4848288288 提高型提高型3232 3232 128128 普及型普及型2424 2424 7272 簡(jiǎn)易型簡(jiǎn)易型1616 16163232 漢字點(diǎn)陣類(lèi)型漢字點(diǎn)陣類(lèi)型點(diǎn)陣點(diǎn)陣占用字節(jié)數(shù)占用字節(jié)數(shù) 2021年6月22日星期二60 2.1.5 校驗(yàn)碼(數(shù)據(jù)校驗(yàn))

51、校驗(yàn)碼(數(shù)據(jù)校驗(yàn)) l數(shù)據(jù)校驗(yàn)原因數(shù)據(jù)校驗(yàn)原因 為減少和避免數(shù)據(jù)在計(jì)算機(jī)系統(tǒng)運(yùn)行或傳送過(guò)程中發(fā)生錯(cuò)為減少和避免數(shù)據(jù)在計(jì)算機(jī)系統(tǒng)運(yùn)行或傳送過(guò)程中發(fā)生錯(cuò) 誤,在數(shù)據(jù)的編碼上提供了檢錯(cuò)和糾錯(cuò)的支持。誤,在數(shù)據(jù)的編碼上提供了檢錯(cuò)和糾錯(cuò)的支持。 l數(shù)據(jù)校驗(yàn)碼的定義數(shù)據(jù)校驗(yàn)碼的定義 能夠發(fā)現(xiàn)某些錯(cuò)誤或具有自動(dòng)糾錯(cuò)能力的數(shù)據(jù)編碼;能夠發(fā)現(xiàn)某些錯(cuò)誤或具有自動(dòng)糾錯(cuò)能力的數(shù)據(jù)編碼; 也稱(chēng)檢錯(cuò)碼;也稱(chēng)檢錯(cuò)碼; l數(shù)據(jù)校驗(yàn)的基本原理是數(shù)據(jù)校驗(yàn)的基本原理是擴(kuò)大碼距擴(kuò)大碼距; 碼距碼距:任意任意兩個(gè)合法碼之間不同的二進(jìn)制位的兩個(gè)合法碼之間不同的二進(jìn)制位的最少位數(shù)最少位數(shù); 僅有一位不同時(shí),稱(chēng)其碼距為僅有一位不同時(shí),稱(chēng)其碼

52、距為1。 2021年6月22日星期二61 碼距及作用碼距及作用 l設(shè)用四位二進(jìn)制表示設(shè)用四位二進(jìn)制表示16種狀態(tài)種狀態(tài) 16種編碼都用到了,此時(shí)碼距為種編碼都用到了,此時(shí)碼距為1; 任何一種狀態(tài)的四位碼中的一位或幾位出錯(cuò),就變成另一任何一種狀態(tài)的四位碼中的一位或幾位出錯(cuò),就變成另一 個(gè)合法碼;個(gè)合法碼; 無(wú)查錯(cuò)能力。無(wú)查錯(cuò)能力。 l若用四位二進(jìn)制表示若用四位二進(jìn)制表示8個(gè)狀態(tài)個(gè)狀態(tài) 只用其中的只用其中的8種編碼,而把另種編碼,而把另8種編碼作為非法編碼;種編碼作為非法編碼; 可使碼距擴(kuò)大為可使碼距擴(kuò)大為2; u注意:并不是任選注意:并不是任選8種編碼都可擴(kuò)大碼距;種編碼都可擴(kuò)大碼距; 2021

53、年6月22日星期二62 校驗(yàn)碼的類(lèi)型校驗(yàn)碼的類(lèi)型 l奇偶校驗(yàn)碼奇偶校驗(yàn)碼 判斷數(shù)據(jù)中判斷數(shù)據(jù)中1的個(gè)數(shù)設(shè)置的個(gè)數(shù)設(shè)置1位校驗(yàn)位;位校驗(yàn)位; 分奇校驗(yàn)和偶校驗(yàn)兩種,只能檢錯(cuò),無(wú)糾錯(cuò)能力;分奇校驗(yàn)和偶校驗(yàn)兩種,只能檢錯(cuò),無(wú)糾錯(cuò)能力; l海明校驗(yàn)碼海明校驗(yàn)碼 在奇偶校驗(yàn)的基礎(chǔ)上增加校驗(yàn)位而得;在奇偶校驗(yàn)的基礎(chǔ)上增加校驗(yàn)位而得; 具有檢錯(cuò)和糾錯(cuò)的能力;具有檢錯(cuò)和糾錯(cuò)的能力; l循環(huán)冗余校驗(yàn)碼(循環(huán)冗余校驗(yàn)碼(CRC) 通過(guò)模通過(guò)模2的除法運(yùn)算建立數(shù)據(jù)信息和校驗(yàn)位之間的約定關(guān)系;的除法運(yùn)算建立數(shù)據(jù)信息和校驗(yàn)位之間的約定關(guān)系; 具有很強(qiáng)的檢錯(cuò)糾錯(cuò)能力。具有很強(qiáng)的檢錯(cuò)糾錯(cuò)能力。 2021年6月22日星期二6

54、3 奇偶校驗(yàn)碼奇偶校驗(yàn)碼概念概念 l奇偶校驗(yàn)原理奇偶校驗(yàn)原理 在數(shù)據(jù)中增加在數(shù)據(jù)中增加1個(gè)冗余位,使碼距由個(gè)冗余位,使碼距由1增加到增加到2; 如果合法編碼中有奇數(shù)個(gè)位發(fā)生了錯(cuò)誤,就將成為非法代碼。如果合法編碼中有奇數(shù)個(gè)位發(fā)生了錯(cuò)誤,就將成為非法代碼。 增加的冗余位稱(chēng)為奇偶校驗(yàn)位。增加的冗余位稱(chēng)為奇偶校驗(yàn)位。 l校驗(yàn)的類(lèi)型校驗(yàn)的類(lèi)型 偶校驗(yàn):每個(gè)碼字偶校驗(yàn):每個(gè)碼字(包括校驗(yàn)位包括校驗(yàn)位)中中1的數(shù)目為偶數(shù)。的數(shù)目為偶數(shù)。 奇校驗(yàn):每個(gè)碼字奇校驗(yàn):每個(gè)碼字(包括校驗(yàn)位包括校驗(yàn)位)中中1的數(shù)目為奇數(shù)。的數(shù)目為奇數(shù)。 l校驗(yàn)過(guò)程校驗(yàn)過(guò)程 發(fā)送端:按照校驗(yàn)類(lèi)型,在發(fā)送數(shù)據(jù)后添加校驗(yàn)位發(fā)送端:按照校驗(yàn)

55、類(lèi)型,在發(fā)送數(shù)據(jù)后添加校驗(yàn)位P; 接收端:對(duì)接收到的數(shù)據(jù)(包括校驗(yàn)位)進(jìn)行接收端:對(duì)接收到的數(shù)據(jù)(包括校驗(yàn)位)進(jìn)行同樣類(lèi)型的校同樣類(lèi)型的校 驗(yàn)驗(yàn),決定數(shù)據(jù)傳輸中是否存在錯(cuò)誤;,決定數(shù)據(jù)傳輸中是否存在錯(cuò)誤; 2021年6月22日星期二64 奇偶校驗(yàn)碼奇偶校驗(yàn)碼校驗(yàn)原理校驗(yàn)原理 l偶校驗(yàn):在接收端求校驗(yàn)位偶校驗(yàn):在接收端求校驗(yàn)位 P=D7 D6 D5 D4 D3 D2 D1 D0 P 若若P0,則無(wú)錯(cuò);若,則無(wú)錯(cuò);若P1,則有錯(cuò)。,則有錯(cuò)。 l奇校驗(yàn):在接收端求校驗(yàn)位奇校驗(yàn):在接收端求校驗(yàn)位 P=D7 D6 D5 D4 D3 D2 D1 D0 P 若若P1,則無(wú)錯(cuò);若,則無(wú)錯(cuò);若P0,則有錯(cuò)。,則

56、有錯(cuò)。 l電路實(shí)現(xiàn):電路實(shí)現(xiàn): 一般采用異或電路得到校驗(yàn)位。一般采用異或電路得到校驗(yàn)位。 1010 1011 求校驗(yàn)碼求校驗(yàn)碼 偶校驗(yàn)碼偶校驗(yàn)碼 1010 1011 1 奇校驗(yàn)碼奇校驗(yàn)碼 1010 1011 0 2021年6月22日星期二65 接收端接收端 字字校驗(yàn)位校驗(yàn)位 校驗(yàn)碼校驗(yàn)碼 例例1: 數(shù)據(jù)數(shù)據(jù) 0010 0001 奇校驗(yàn)碼奇校驗(yàn)碼 0010 0001 1 偶校驗(yàn)碼偶校驗(yàn)碼 0010 0001 0 例例2:數(shù)據(jù):數(shù)據(jù) : 0111 0101 偶校驗(yàn)碼偶校驗(yàn)碼 0111 0101 1 發(fā)送端發(fā)送端(門(mén)電路)(門(mén)電路) 0110 0101 1 出錯(cuò)!出錯(cuò)! 奇偶校驗(yàn)碼奇偶校驗(yàn)碼 例題(

57、例題(1/2) 2021年6月22日星期二66 例例3:數(shù)據(jù):數(shù)據(jù) : 0111 0101 奇校驗(yàn)碼奇校驗(yàn)碼 0111 0101 0 發(fā)送端發(fā)送端 (門(mén)電路)(門(mén)電路) 0110 0111 0 接收端接收端 正確正確 奇偶校驗(yàn)只能發(fā)現(xiàn)奇偶校驗(yàn)只能發(fā)現(xiàn) 奇數(shù)個(gè)錯(cuò)誤,且不能奇數(shù)個(gè)錯(cuò)誤,且不能 糾正錯(cuò)誤!糾正錯(cuò)誤! 奇偶校驗(yàn)碼奇偶校驗(yàn)碼例題(例題(1/2) 2021年6月22日星期二67 海明碼海明碼 l海明碼是海明碼是1950年提出的;年提出的; 只要增加少數(shù)的幾位校驗(yàn)碼,即可檢測(cè)出多位出錯(cuò),并能自只要增加少數(shù)的幾位校驗(yàn)碼,即可檢測(cè)出多位出錯(cuò),并能自 動(dòng)恢復(fù)一或幾位出錯(cuò)信息;動(dòng)恢復(fù)一或幾位出錯(cuò)信息

58、; l實(shí)現(xiàn)原理:實(shí)現(xiàn)原理: 在一個(gè)數(shù)據(jù)中加入幾個(gè)校驗(yàn)位,在一個(gè)數(shù)據(jù)中加入幾個(gè)校驗(yàn)位,每個(gè)校驗(yàn)位和某幾個(gè)特定的每個(gè)校驗(yàn)位和某幾個(gè)特定的 信息位信息位構(gòu)成偶校驗(yàn)的關(guān)系;構(gòu)成偶校驗(yàn)的關(guān)系; 接收端對(duì)每個(gè)偶關(guān)系進(jìn)行校驗(yàn),產(chǎn)生校驗(yàn)因子;接收端對(duì)每個(gè)偶關(guān)系進(jìn)行校驗(yàn),產(chǎn)生校驗(yàn)因子; 通過(guò)通過(guò)校正因子校正因子區(qū)分區(qū)分無(wú)錯(cuò)無(wú)錯(cuò)和碼字中的和碼字中的n個(gè)不同位置的錯(cuò)誤個(gè)不同位置的錯(cuò)誤; u不同代碼位上的錯(cuò)誤會(huì)得出不同的校驗(yàn)結(jié)果;不同代碼位上的錯(cuò)誤會(huì)得出不同的校驗(yàn)結(jié)果; 2021年6月22日星期二68 海明碼海明碼確定校驗(yàn)位的位數(shù)確定校驗(yàn)位的位數(shù) l設(shè)設(shè)K為有效信息的位數(shù),為有效信息的位數(shù),r為校驗(yàn)位的位數(shù),則整個(gè)碼

59、字的位數(shù)為校驗(yàn)位的位數(shù),則整個(gè)碼字的位數(shù) N應(yīng)滿(mǎn)足不等式:應(yīng)滿(mǎn)足不等式: NKr2r1 通常稱(chēng)為(通常稱(chēng)為(N,K)海明碼)海明碼 l設(shè)某設(shè)某(7,4)海明碼表示的碼字長(zhǎng)度為海明碼表示的碼字長(zhǎng)度為 位,校驗(yàn)位數(shù)為位,校驗(yàn)位數(shù)為 位。位。 l例如:數(shù)據(jù)例如:數(shù)據(jù)D3D2D1D0 =1001 K=4,r+5 2r ; 可知,需要校驗(yàn)位可知,需要校驗(yàn)位3位位P3P2P1 ; 73 2021年6月22日星期二69 海明碼海明碼確定校驗(yàn)位的位置確定校驗(yàn)位的位置 l數(shù)據(jù)表示數(shù)據(jù)表示 數(shù)據(jù)位數(shù)據(jù)位D(DiDi-1D1D0) 、校驗(yàn)位、校驗(yàn)位P(PjPj-1P2P1) 海明碼海明碼H (包括數(shù)據(jù)位和校驗(yàn)位):

60、(包括數(shù)據(jù)位和校驗(yàn)位):HmHm-1H2H1; l分組原則分組原則 每個(gè)校驗(yàn)位每個(gè)校驗(yàn)位Pi從低到高被分在海明碼中位號(hào)從低到高被分在海明碼中位號(hào)2i-1的位置;的位置; l例如:數(shù)據(jù)例如:數(shù)據(jù)D3D2D1D0 =1001,校驗(yàn)位,校驗(yàn)位P3P2P1 海明碼共海明碼共7位位H7H6H2H1 ,各位分配如下:,各位分配如下: H7H6H5H4H3H2H1 P1 P2 P3 D0 D1 D2 D3 2021年6月22日星期二70 海明碼海明碼校驗(yàn)分組校驗(yàn)分組 l校驗(yàn)原則校驗(yàn)原則 海明碼的每一位海明碼的每一位Hi有多個(gè)校驗(yàn)位校驗(yàn),其關(guān)系是有多個(gè)校驗(yàn)位校驗(yàn),其關(guān)系是被校驗(yàn)的每被校驗(yàn)的每 一位位號(hào)一位位號(hào)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論