




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1補碼補碼反碼反碼原碼原碼真值真值000000000011111000001000001.01011.01001.1011-0.10110.10110.10110.10110.1011101011010011011-10110101101011010111011形式相同形式相同形式相近形式相近, ,多了個多了個0 0補碼零的補碼零的表示唯一表示唯一21.2 1.2 帶符號數的代碼表示帶符號數的代碼表示n 真值與機器數真值與機器數n 原碼、反碼和補碼原碼、反碼和補碼n 機器數的加、減運算機器數的加、減運算n 十進制數的補數十進制數的補數3數有正負問題,計算機中數有正負問題,計算機中如何表示帶符號
2、的數?如何表示帶符號的數?1.2 1.2 帶符號數的代碼表示帶符號數的代碼表示4真值:真值:直接用直接用“ “ ” “” “”符號表示的帶符號數。符號表示的帶符號數。機器不認識,不能在機器中使用。機器不認識,不能在機器中使用。5數的符號 正數:+(或省略) 負數:- 數的符號位:數的最高位 數的符號在r進制數中的表示 正數:0 負數:r-1 數的符號在二進制數中的表示 正數:0 負數:16= (+ 1011011)2( 9 1)10 =( 1011011)2 真值機器只能認識二進制數,因此數的正與負必須用二進制數來表示。用0和1兩個代碼表示正和負,并規定一個數的最高位為符號位。從而得到機器數。
3、真值例 如,( + 9 1)109 1=64+16+8+2+17機器數機器數:將符號數值化后的二進制數。機器能認識。例如:+ 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 真值機器數符號位數值 1 0 1 0 1 1 0 1 1 0 1 0 1 1 0 8n符號二進制代碼化。符號二進制代碼化。n編碼直觀、方便編碼。編碼直觀、方便編碼。n方便處理(運算)。方便處理(運算)。nN=1+N-1N=1+N-1符號二進制編碼遵循的原則符號二進制編碼遵循的原則 9(Sign Magnitude Numbers) 原碼表示法用原碼表示法用“0”0”表示正號,用表示正號,用“1”1”表示負號,有
4、效值部分用二進制的絕對值表示負號,有效值部分用二進制的絕對值表示。表示。10小數: X 1- 2-(n-1) X0 X原 = 1-X=1+|X| 0X-(1-2-(n-1) )11例例 完成下列數的真值到原碼的轉換完成下列數的真值到原碼的轉換X X1 1 = + 0.1011011 = + 0.1011011 X X2 2 = - 0.1011011 = - 0.1011011 12原碼小數的表示范圍原碼小數的表示范圍: :n+0+0原原 =0.0000000 ; =0.0000000 ; -0 -0原原 =1.0000000 =1.0000000 n最大值最大值 : 1- 2 : 1- 2-
5、(n-1) -(n-1) n最小值最小值:-(1- 2:-(1- 2-(n-1)-(n-1) )n表示數的個數表示數的個數: 2: 2n n - - 1 113若二進制原碼小數的位數分別是若二進制原碼小數的位數分別是8 8、1616位位, ,求其該數表示的最大值、最小值及求其該數表示的最大值、最小值及所能表示數的個數?所能表示數的個數?8 8位位: 127/128: 127/128,-127/128-127/128,2552551616位位: 32767/32768 , -32767/32768 , 65535: 32767/32768 , -32767/32768 , 6553514整數:
6、X 2n-1-1X0 X原 = 2n-1-X=2n-1+|X| 0X-(2n-1-1)15例例 完成下列數的真值到原碼的轉換。完成下列數的真值到原碼的轉換。X X1 1 = + 1011011 = + 1011011 X X2 2 = - 1011011 = - 1011011 16N = + 1 1 0 1 0 0 1 N原 = 0 1 1 0 1 0 0 1 N = 1 1 0 1 0 0 1 N原 = 1 1 1 0 1 0 0 1 N = + 0+ 0原 = 0 0 0 0 0 0 0 0 N = 0 0原 = 1 0 0 0 0 0 0 0 17原碼整數的表示范圍原碼整數的表示范圍:
7、 :n+0+0原原 =00000000 ; -0=00000000 ; -0原原 =10000000 =10000000 n最大值最大值 : 2: 2(n-1)(n-1)-1-1n最小值最小值:-(2:-(2-(n-1)-(n-1)-1)-1)n表示數的個數表示數的個數: 2: 2n n - - 1 118若二進制的位數分別是若二進制的位數分別是8 8、16,16,求其表示求其表示整數的最大值、最小值及表示數的個數。整數的最大值、最小值及表示數的個數。8 8位位: 127: 127,-127-127,2552551616位位: 32767 , -32767 , 65535: 32767 , -
8、32767 , 6553519原碼特點:原碼特點:n表示簡單,易于同真值之間進行轉表示簡單,易于同真值之間進行轉換,實現乘除運算規則簡單。換,實現乘除運算規則簡單。n進行加減運算時,符號位與數值位進行加減運算時,符號位與數值位分別計算,不方便。分別計算,不方便。20Diminished Radix Complement 正數的表示與原、補碼相同,正數的表示與原、補碼相同,負數的補碼符號位為負數的補碼符號位為1 1,數值位是,數值位是將原碼的數值按位取反,就得到該將原碼的數值按位取反,就得到該數的反碼表示。數的反碼表示。21小數: X 1 X 0X反= (2- 2-(n-1) )+X 0 X -
9、(1-2-(n-1)X1=+0.1011011 , X1 反 =0.1011011X2= -0.1011011 , X2 反 =1.0100100 1. 1 1 1 1 1 1 1 -0. 1 0 1 1 0 1 1 1. 0 1 0 0 1 0 0 22整數整數: X 2n-1 X 0 X反= (2n -1)+X 0 X -2n-1 X3=+1011011 , X3 反 =01011011 X4= -1011011 , X4 反 =10100100 1 1 1 1 1 1 1 1- 1 0 1 1 0 1 1 1 0 1 0 0 1 0 0 +0反=00000000 ; -0反 =11111
10、11123反碼所表示的數值范圍:(以8位為例)正數: + N反 = 0 0000000 0 1111111即:0 127負數: N反 = 1 0000000 1 1111111即:127 024總結:反碼的特點總結:反碼的特點正數與負數的反碼完全不同。正數與負數的反碼完全不同。 “ 0” 的反碼有兩種不同的形式。的反碼有兩種不同的形式。+ N反 = + N原 N反 = 1 N 原+ 0 反 = 0 0 0 0 0 0反= 1 1 1 1 125正數與負數的補碼是完全不同的。規則:+ N補 = + N原 N補 = N反 1(符號位參與計算)二進制的補(twos complements) 26 模
11、模:計量器具的容量,或稱為模數。:計量器具的容量,或稱為模數。4 4位字長的機器表示的二進制整數為:位字長的機器表示的二進制整數為: 0000-1111 0000-1111 共共1616種狀態,模為種狀態,模為16= 16= 2 24 4 。 整數整數N N位字長的模值為位字長的模值為 2 2n n,一位符,一位符號位的純小數的模值為號位的純小數的模值為2 2。 補碼補碼的定義:正數的補碼就是正數的定義:正數的補碼就是正數的本身,負數的補碼是原負數加上模。的本身,負數的補碼是原負數加上模。Radix Complements27小數: X 1- 2-(n-1) X0 x補= 2+X=2-|X|
12、0X-1 28例例 完成下列數的真值到補碼的轉換。完成下列數的真值到補碼的轉換。X X1 1 = + 0.1011011 = + 0.1011011 X X2 2 = - 0.1011011 = - 0.1011011 29整數: X 2(n-1) -1 X0 x補= 2n+X=2n-|X| 0X- 2(n-1)30例例 完成下列數的真值到補碼的轉換。完成下列數的真值到補碼的轉換。X X1 1 = + 0 1011011 = + 0 1011011 X X2 2 = - 0 1011011 = - 0 1011011 31補碼的表示范圍補碼的表示范圍:nN N位純整數位純整數: 2: 2n-1
13、 n-1 1 -21 -2n-1 n-1 nN N位純小數位純小數: 1- 2: 1- 2-(n-1) -(n-1) - 1 - 1 n均能表示均能表示 2 2n n 個數個數32+ 4補 = + 0000100補 = 0 0000100符號位數值位 4補 = 0000100補 = 1 1111011 + 1 = 1 11111004反+ 0補 = + 0000000補 = 0 0000000 0補 = 0000000補 = 1 1111111 + 1 = 0 0000000例:(以8位二進制數為例)331 將十進制數轉換成二進制數。將十進制數轉換成二進制數。D = - (1101)*2 -6
14、= - 0.0011012 對二進制數求補。對二進制數求補。D補補=1.11001134總結:補碼的特點總結:補碼的特點正數和負數的補碼是不同的。正數和負數的補碼是不同的。+ N補 + N原 N補 N反 135真值真值原碼原碼反碼反碼補碼補碼-11010010100110100110100110100111111機器數與真值間的互換機器數與真值間的互換求補碼的經驗法求補碼的經驗法36常例:鐘表校時欲將鐘表時間從10點撥到6點。121111087611108723459+ 8437兩種撥法:倒撥4小時,即 104 = 6順撥8小時,即 10 + 8 = 12 + 6自然丟失12是鐘表的最大數(或
15、最大量程),稱該鐘表系統的模,系統的數字超過此數則模自然丟失。這樣利用模的自然丟失,將減法變成加法。即38 定點補碼加法運算規則:定點補碼加法運算規則: X+YX+Y補補 =X=X補補+Y+Y補補在模數系統下,任意兩數的補碼之在模數系統下,任意兩數的補碼之和等于該兩數之和的補碼。和等于該兩數之和的補碼。39nX=44=32+8+4X=44=32+8+4例:已知機器字長例:已知機器字長n=8n=8,X=44X=44,Y=53Y=53,求求X+Y=X+Y=?100000+1000+100100000+1000+100=101100=1011000 01011001011008=7+1符號位為00
16、0X補=0010110040nY=53=32+16+4+1Y=53=32+16+4+1例:已知機器字長例:已知機器字長n=8n=8,X=44X=44,Y=53Y=53,求求X+Y=X+Y=?100000+10000+100+1100000+10000+100+1=110101=1101010 01101011101018=7+1符號位為00 0Y補=0011010141例:已知機器字長例:已知機器字長n=8n=8,X=-44X=-44, Y=-53Y=-53,求,求X+Y=X+Y=?解:解:4444補補=00101100, 53=00101100, 53補補=00110101=00110101
17、XX補補=-44=-44補補=11010100,=11010100,YY補補=-53=-53補補=11001011,=11001011, X X補補 = 1 1 0 1 0 1 0 0= 1 1 0 1 0 1 0 0 + Y + Y補補 = 1 1 0 0 1 0 1 1= 1 1 0 0 1 0 1 1 X+Y X+Y補補 = = 1 1 1 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 超出超出8 8位,舍棄模位,舍棄模值值 X+Y=-01100001X+Y=-01100001,X+Y=X+Y=( -97-97)42n在沒有溢出的情況下:在沒有溢出的情況下: X+YX+Y補
18、補 =X=X補補+Y+Y補。補。符號位與數值位一起直接參加運算。符號位與數值位一起直接參加運算。符號位產生的進位位為模可以丟掉。符號位產生的進位位為模可以丟掉。43二、定點補碼減法二、定點補碼減法 定點補碼減法運算規則定點補碼減法運算規則: : X-Y X-Y補補=X=X補補+-Y+-Y補補 從從Y Y補補求求-Y-Y補補的法則是:對的法則是:對Y Y補補帶符號位帶符號位一起求補。一起求補。44例:已知機器字長例:已知機器字長n=8n=8,X=44X=44,Y=53Y=53,求,求X-Y=X-Y=?解:解:XX補補=00101100=00101100,YY補補=00110101,=001101
19、01, -Y -Y補補=11001011=11001011 X X補補 = 0 0 1 0 1 1 0 0= 0 0 1 0 1 1 0 0 -Y -Y補補= 1 1 0 0 1 0 1 1= 1 1 0 0 1 0 1 1 + + 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 X-YX-Y補補=11110111=11110111,X-Y=X-Y=(-0001001-0001001)2 2= =(-9-9)101045例:已知機器字長例:已知機器字長n=8n=8,X=-44X=-44, Y=-53Y=-53,求,求X-Y=X-Y=?解:解:XX補補=11010100=1101
20、0100,YY補補=11001011,=11001011, -Y -Y補補=00110101=00110101 X X補補= 1 1 0 1 0 1 0 0= 1 1 0 1 0 1 0 0 -Y -Y補補 = 0 0 1 1 0 1 0 1= 0 0 1 1 0 1 0 1 + + 超出超出8 8位(模值),舍棄位(模值),舍棄X-YX-Y補補=00001001=00001001,X-Y=+0001001 =(+9)X-Y=+0001001 =(+9)1 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 146解:解:XX補補=01111000=01111000,YY補補=00
21、001010,=00001010, X X補補= 0 1 1 1 1 0 0 0= 0 1 1 1 1 0 0 0 Y Y補補 = 0 0 0 0 1 0 1 0= 0 0 0 0 1 0 1 0例:已知機器字長例:已知機器字長n=8n=8,X= 120X= 120, Y=10Y=10,求,求X+Y=X+Y=? 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 X+Y X+Y補補=10000010=10000010 X+Y X+Y的真值的真值 ( -130)( -130)1010 8 8位計算機數值表達范圍:位計算機數值表達范圍:(-128 (-128 +127)+127)運算結
22、果超出機器數值范圍發生運算結果超出機器數值范圍發生溢出溢出錯誤。錯誤。+ +47補碼運算特點:補碼運算特點:在無溢礎的情況下,符號位與數值在無溢礎的情況下,符號位與數值位一同直接參加運算。位一同直接參加運算。直接丟模(符號位的進位位)。直接丟模(符號位的進位位)。補碼可將減法變加法進行運算。補碼可將減法變加法進行運算。已知已知Y Y補,補,求(求(-Y-Y)補補的方法為連符號的方法為連符號位一起直接求補。位一起直接求補。48指出:由于采用補碼可把減法化成加法,因此,機器中的+、運算,均歸結為一種加法運算,從而使計算機的硬軟結構非常簡單。為此,機器中帶符號的數,無論是正數或負數均采用補碼形式,而
23、運算的結果也是補碼形式。491.2.6 1.2.6 十進制數的補數十進制數的補數 帶符號十進制數也有三種表示方帶符號十進制數也有三種表示方法,它們分別法,它們分別: :符號符號- -數值表示、數值表示、 “ “對對9 9的補數的補數”及及“對對1010的補數的補數”。50符號符號- -數值表示數值表示 習慣上用習慣上用00000000(等效于十進制數(等效于十進制數0 0)表示正,而用)表示正,而用10011001(相當于(相當于十進制數十進制數9 9)表示負。)表示負。 +9 00001001+9 00001001 -9 10011001-9 1001100151對于十進制正數對于十進制正數
24、N N,它的,它的“對對1010的補數的補數”的表示形式是:符號位用的表示形式是:符號位用0 0表示,數值部分表示,數值部分則是十進制數則是十進制數N N本身。本身。對于十進制負數對于十進制負數N N,它的,它的“對對1010的補數的補數”的一般形式為:的一般形式為: N N1010補補10 10 n nN N 10 10 n n1 1N N0 0其中,其中,n n是十進制負數是十進制負數N N的整數部分的位數的整數部分的位數(包括(包括1 1位符號位)。位符號位)。 對對1010的補數的補數52例如,十進制數例如,十進制數N N32503250,其,其“對對1010的補數的補數”為為3250
25、32501010補補10 10 5 5325032509675096750 由此可見,只要由此可見,只要用用1010減最低位非減最低位非0 0的數,然后的數,然后用用9 9減所有較高位的數減所有較高位的數,就可以形成十進制數,就可以形成十進制數的的“對對1010的補數的補數”。53 十進制數十進制數“對對1010的補數的補數”的減法運的減法運算和二進制數的補碼的減法運算相似,算和二進制數的補碼的減法運算相似,可將減法轉換成加法來實現。可將減法轉換成加法來實現。54 0 7 2 5 3 2 )9 9 6 7 5 0 丟掉1 0 6 9 2 8 2 符號位產生的進位必須丟掉。運算結果是“對10的補
26、數”,即 N1N210補069282其真值為 N1N269282 。 例:給定例:給定N1N2N20325003250,求,求N NN1N1N2N2。 解:用解:用“對對1010的補數的補數”進行運算,即進行運算,即 N1N1N2N21010補補7253725303250032501010補補 72532725321010補補03250032501010補補 07253207253299675099675055對對9 9的補數的補數 十進制數的十進制數的“對對9 9的補數的補數”與二進制數的反碼類似。與二進制數的反碼類似。 對于十進制正數對于十進制正數N N,它的,它
27、的“對對9 9的補數的補數”的表示形式與的表示形式與N N的的“對對1010的補數的補數”的表示形式相同。的表示形式相同。 對于十進制負數對于十進制負數N N,它的,它的“對對9 9的補數的補數”的一般表的一般表示形式為示形式為 N N9 9補補1010n n1010m mN N 10 10 n n1 1N N0 0 其中,其中,n n是十進制負數是十進制負數N N的整數部分的位數(包括的整數部分的位數(包括1 1位符號位);位符號位); m m是十進制負數是十進制負數N N的小數部分的位數。的小數部分的位數。56二、 例如,十進制數例如,十進制數N N25.63925.639,N N的的“對
28、對9 9的補數的補數”為為 25.63925.6399 9補補10103 310103 325.63925.639 974.360974.360 由此可見,只要由此可見,只要分別用分別用9 9減十進制數減十進制數的各位就可得到的各位就可得到這個數的這個數的“對對9 9的補數的補數“。 十進制數的十進制數的“對對9 9的補數的補數”的減法運算同二進制數的的減法運算同二進制數的反碼運算相類似,即將減法轉換成加法來實現。反碼運算相類似,即將減法轉換成加法來實現。57例:若給定N15489和N23250,試求NN1N2。解:用“對9的補數”進行運算,即 N1N29補548932509補 54899補3
29、2509補 05489967490 5 4 8 9 )9 6 7 4 9 1 0 2 2 3 8 )10 2 2 3 9符號位產生的進位需加在和數的最低位上。運算的結果是“對9的補數”,即 N1N29補02239其真值為 N1N2223958X X1 1 = = + + 1101101 1101101X X2 2 = = - - 數值數據的表示數值數據的表示一、一、真值真值與與機器數機器數二、二、帶符號二進制數的代碼表示帶符號二進制數的代碼表示1. 1. 原碼原碼XX原:原:原碼原碼反碼反碼補碼補碼變形補碼變形補碼尾數部分的表示形式:尾數部分的表示形式:最高位:最高位:“0”“0”表示表示“+
30、”+”“1”“1”表示表示“-”-”符號位符號位+尾數部分(真值)尾數部分(真值)原碼的性質:原碼的性質: “0”“0”有兩種表示形式有兩種表示形式+00+0000原原 = 000= 0000 0 而而 -00-0000原原 = 100= 1000 0 數值范圍:數值范圍: + +(2 2n 1n 1-1-1)XX原原-(2 2n-1n-1-1-1)如如n = 8n = 8,原碼范圍,原碼范圍01111111011111111111111111111111,數值范圍,數值范圍為為+127+127-127-127 符號位后的尾數即為真值的數值符號位后的尾數即為真值的數值符號(符號(+/-+/-)
31、數碼化)數碼化 最高位:最高位:“0”“0”表示表示“+”+”“1”“1”表示表示“-”-”數符(數符(+/-+/-)+ +尾數尾數(數值的絕對值(數值的絕對值)59數值數據的表示數值數據的表示2. 2. 反碼反碼XX反:反:符號位符號位+尾數部分尾數部分 反碼的性質反碼的性質正數:尾數部分與真值形式相同正數:尾數部分與真值形式相同負數:尾數為真值數值部分按位取反負數:尾數為真值數值部分按位取反 X X1 1 = +4 = +4X X2 2 = -4 = -4XX1 1 反反 = = 0 0XX2 2 反反 = = 1 13、補碼補碼XX補:補:符號位符號位+尾數部分尾數部分正數:尾數部分與真
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算地球流體力學大綱
- 湖北省天門市2023-2024學年七年級下學期7月期末考試語文試卷(含答案)
- 幼兒小班跳圈教案反思模板
- 2025年人教版七年級數學下冊期末模擬試卷
- 部編版一年級上冊第一單元《天地人》教案
- 部編版四年級上冊第三單元《古詩三首(暮江吟等)》教案
- 建筑施工特種作業-建筑起重機械司機(塔式起重機)真題庫-2
- 賽馬會題目及答案
- 13《電磁感應與電磁波初步》-2025高中物理水平合格考備考知識清單+習題鞏固
- 2023-2024學年湖南省永州市名校聯盟高二下學期期末考試數學試題(解析版)
- 廣東省深圳市寶安區2023-2024學年二年級下冊期末測試數學試卷(含答案)
- 北京市順義區2023-2024學年五年級下學期數學期末試卷(含答案)
- 2025公基題庫(附答案解析)
- 2024年佛山市順德區龍江社區衛生服務中心招聘真題
- 2025年寧夏銀川靈武市選聘市屬國有企業管理人員招聘筆試沖刺題(帶答案解析)
- 三大監測培訓試題及答案
- 兩辦意見宣貫考試題及答案
- 2025年汽車駕照考試科目一考試題庫及參考答案
- 系統思維與系統決策系統動力學知到智慧樹期末考試答案題庫2025年中央財經大學
- 2025浙江中考:歷史必背知識點
- 音響安裝施工合同協議
評論
0/150
提交評論