版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、1n1、微型計算機系統(tǒng)的構(gòu)成。n2、微處理器。n3、總線。n4、基本概念。1、運算器、()和寄存器組構(gòu)成()。、運算器、()和寄存器組構(gòu)成()。2、馮、馮諾依曼的體系結(jié)構(gòu)中,由()、控制器、()、輸入設(shè)備、()諾依曼的體系結(jié)構(gòu)中,由()、控制器、()、輸入設(shè)備、()構(gòu)成計算機硬件系統(tǒng)。構(gòu)成計算機硬件系統(tǒng)。1、控制器,微處理器、控制器,微處理器2、運算器,存儲器,輸出設(shè)備、運算器,存儲器,輸出設(shè)備2n時間:時間:20109月月1日(第一周周三)日(第一周周三)n本次課內(nèi)容:本次課內(nèi)容:n1、計算機的數(shù)和編碼系統(tǒng)。、計算機的數(shù)和編碼系統(tǒng)。n本次課重點:本次課重點:n1、BCD數(shù)及各進制數(shù)的相互轉(zhuǎn)化
2、過程。數(shù)及各進制數(shù)的相互轉(zhuǎn)化過程。n2、機器數(shù)、真值、原碼、反碼、補碼的概念及相互轉(zhuǎn)、機器數(shù)、真值、原碼、反碼、補碼的概念及相互轉(zhuǎn)化?;?。n3、溢出、溢出n本次課難點:本次課難點:n1、求一個負數(shù)的補碼。(按定義,按求補的方法)、求一個負數(shù)的補碼。(按定義,按求補的方法)n2、無符號數(shù)的進位和帶符號數(shù)的溢出。、無符號數(shù)的進位和帶符號數(shù)的溢出。3第2章 計算機中的數(shù)制和編碼 2.1 無符號數(shù)的表示及運算無符號數(shù)的表示及運算 2.2 帶符號數(shù)的表示及運算帶符號數(shù)的表示及運算 2.3 信息的編碼信息的編碼 4 通常,計算機中的數(shù)據(jù)分為兩類:通常,計算機中的數(shù)據(jù)分為兩類:(1 1)數(shù)數(shù)(2 2)碼碼
3、5一、數(shù)制的基本概念一、數(shù)制的基本概念 1 1數(shù)的表示數(shù)的表示: : N Nd dn n1 1b bn n1 1d dn n2 2b bn n2 2d dn n3 3b bn n3 3ddm mb bm m式中式中:nn整數(shù)的總位數(shù)。整數(shù)的總位數(shù)。 mm小數(shù)的總位數(shù)。小數(shù)的總位數(shù)。 d d下標(biāo)下標(biāo)表示該位的數(shù)碼。表示該位的數(shù)碼。bb表示進位制的基數(shù)。表示進位制的基數(shù)。 b b上標(biāo)上標(biāo)表示該位的位權(quán)。表示該位的位權(quán)。例例2.1 138.5(D)= 1012105108103101例例2.2 1101.11B= )(75.13212121202121210123D62計數(shù)制的書寫規(guī)則計數(shù)制的書寫規(guī)
4、則(1)在數(shù)字后面加寫相應(yīng)的英文字母作)在數(shù)字后面加寫相應(yīng)的英文字母作為標(biāo)識。為標(biāo)識。如:二進制數(shù)如:二進制數(shù)100B,十六進制數(shù),十六進制數(shù)100H,十進制數(shù)十進制數(shù)100D,八進制數(shù)八進制數(shù)100Q。(2)在括號外面加數(shù)字下標(biāo)。)在括號外面加數(shù)字下標(biāo)。 如:(如:(1011)2 1011B (2DF2)16 2DF2H71 1計算機中常用的進位計數(shù)制計算機中常用的進位計數(shù)制 計數(shù)制計數(shù)制 基數(shù)基數(shù) 數(shù)碼數(shù)碼 進位關(guān)系進位關(guān)系 二進制二進制 2 02 0、1 1 逢二進一逢二進一八進制八進制 8 08 07 7 逢八進一逢八進一十進制十進制 10 010 09 9 逢十進一逢十進一十六進制十
5、六進制 16 016 09 9、A AF F 逢十六進一逢十六進一例例2.3 0E5AD.BFH =210123161516111613161016516142.1 無符號數(shù)的表示及運算 2.1.1 無符號數(shù)的表示方法無符號數(shù)的表示方法 8 計算機中無符號數(shù)計算機中無符號數(shù)的表示:如果用八位二進制數(shù)表的表示:如果用八位二進制數(shù)表示十進制數(shù)示十進制數(shù),則:則: 00000000B11111111B表示表示0255。思考:如果是十六位思考:如果是十六位二進制數(shù)二進制數(shù)呢呢?00000000000000000B1111111111111111B表示表示06553592.1.2 各種數(shù)制的相互轉(zhuǎn)換各種
6、數(shù)制的相互轉(zhuǎn)換 1任意進制數(shù)轉(zhuǎn)換為十進制數(shù)任意進制數(shù)轉(zhuǎn)換為十進制數(shù) 例:(例:(101.1) 2 =12202112012-1(5.5)10 例:例:3A.F8H316 1101601516 -1816 -258.96875D10【習(xí)題習(xí)題1 1】將十進制整數(shù)(將十進制整數(shù)(105105)1010轉(zhuǎn)換為二進制整數(shù)轉(zhuǎn)換為二進制整數(shù). .2 2 105 105 2 2 52 52 余數(shù)為余數(shù)為1 1 2 2 26 26 余數(shù)為余數(shù)為0 0 2 2 13 13 余數(shù)為余數(shù)為0 0 2 2 6 6 余數(shù)為余數(shù)為1 1 2 2 3 3 余數(shù)為余數(shù)為0 0 2 2 1 1 余數(shù)為余數(shù)為1 1 0 0 余數(shù)
7、為余數(shù)為1 1 所以所以,(,(105105)1010(11010011101001)2 22. 十進制數(shù)轉(zhuǎn)換成二進制數(shù)十進制數(shù)轉(zhuǎn)換成二進制數(shù)1)整數(shù)部分的轉(zhuǎn)換整數(shù)部分的轉(zhuǎn)換除以基數(shù)(除以基數(shù)(2)取余數(shù),先為低位()取余數(shù),先為低位(B0)后為高位。)后為高位。 11【習(xí)題習(xí)題2 2】將十進制小數(shù)(將十進制小數(shù)(0.81250.8125)1010轉(zhuǎn)換為二進制小數(shù)。轉(zhuǎn)換為二進制小數(shù)。0.81250.81252 21.625 1.625 取整數(shù)位取整數(shù)位1 10.6250.6252 21.25 1.25 取整數(shù)位取整數(shù)位1 1 0.250.252 20.5 0.5 取整數(shù)位取整數(shù)位0 00.50
8、.52 21.0 1.0 取整數(shù)位取整數(shù)位1 1 所以所以,(,(0.81250.8125)1010(0.11010.1101)2 2如果出現(xiàn)乘積的小數(shù)部分一直不為如果出現(xiàn)乘積的小數(shù)部分一直不為“0”0”?則可以根據(jù)精度的要求截取一定的位數(shù)即可。則可以根據(jù)精度的要求截取一定的位數(shù)即可。 2) 小數(shù)部分的轉(zhuǎn)換小數(shù)部分的轉(zhuǎn)換小數(shù)部分乘以基數(shù)(小數(shù)部分乘以基數(shù)(2)取整數(shù)()取整數(shù)(0或或1),先為高位(),先為高位(B-1)后為低位。)后為低位。12十進制到八進制、十六進制的轉(zhuǎn)換。十進制到八進制、十六進制的轉(zhuǎn)換。八進制八進制:整數(shù)部分除整數(shù)部分除8取余,低位至高;小數(shù)部分乘取余,低位至高;小數(shù)部分
9、乘8取整,取整,高位到低。高位到低。十六進制十六進制:整數(shù)部分除:整數(shù)部分除16取余,低位至高;小數(shù)部分乘取余,低位至高;小數(shù)部分乘16取整,高位到低。取整,高位到低。13 【例例】將十進制整數(shù)(將十進制整數(shù)(23472347)1010轉(zhuǎn)換為十六進制整轉(zhuǎn)換為十六進制整 數(shù),采用數(shù),采用“除除1616倒取余倒取余”的方法,過程如下:的方法,過程如下:16 16 2347 2347 16 16 146 146 余數(shù)為余數(shù)為1111(十六進制數(shù)為(十六進制數(shù)為B B) 16 16 9 9 余數(shù)為余數(shù)為2 2 0 0 余數(shù)為余數(shù)為9 9 所以所以,(,(23472347)1010(92B92B)161
10、614 例例2.4 將將13.75轉(zhuǎn)換為二進制數(shù)。轉(zhuǎn)換為二進制數(shù)。 分別將整數(shù)和小數(shù)部分進行轉(zhuǎn)換:分別將整數(shù)和小數(shù)部分進行轉(zhuǎn)換: 整數(shù)部分:整數(shù)部分:13=1101B 小數(shù)部分:小數(shù)部分:0.75=0.11B 因此,因此,13.75=1101.11B 15例例2.5 將將28.75轉(zhuǎn)換為十六進制數(shù)轉(zhuǎn)換為十六進制數(shù) 整數(shù)部分:整數(shù)部分:28=1CH 小數(shù)部分:小數(shù)部分:0.7516=12.0, B-1=CH,小數(shù)部分已為,小數(shù)部分已為0,停止計算。停止計算。因此,因此,28.75=1C.CH 16 3二進制數(shù)與十六進制數(shù)之間的轉(zhuǎn)換二進制數(shù)與十六進制數(shù)之間的轉(zhuǎn)換 二進制數(shù)轉(zhuǎn)換為十六進制數(shù):二進制數(shù)
11、轉(zhuǎn)換為十六進制數(shù): 從小數(shù)點開始分別向左或向右,將每從小數(shù)點開始分別向左或向右,將每4 4位二進制數(shù)位二進制數(shù)分成分成1 1組,不足組,不足4 4位的補位的補0 0,然后將每組用一位十六進,然后將每組用一位十六進制數(shù)表示即可。制數(shù)表示即可。十六進制數(shù)轉(zhuǎn)換為二進制數(shù)十六進制數(shù)轉(zhuǎn)換為二進制數(shù) 將每位十六進制數(shù)用將每位十六進制數(shù)用4 4位二進制數(shù)表示即可。位二進制數(shù)表示即可。17 十六進制數(shù)十六進制數(shù):大部分微機字長是大部分微機字長是4的整數(shù)倍,所以廣泛的整數(shù)倍,所以廣泛 采用十六進制。采用十六進制。 特點特點(1)、具有)、具有09,AF16個數(shù)字符號。個數(shù)字符號。 (2)、逢)、逢16進進1。0
12、 1 2 3 4 5 6 7 8 9 A B0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011C D E F1100 1101 1110 1111例:例:1、5EA.7B4H=0101 1110 1010 .0111 1011 0100B10111101010.0111101101B 2、111001110.001110101B=0001 1100 1110 .0011 1010 1000B=1CE.3A8H18【例例】 1101110.01011B=0110 1110.0101 1000B=6E.58H2F.1BH=10 1
13、111.0001 1011B 19n當(dāng)十進制已經(jīng)轉(zhuǎn)化為二進制后,可經(jīng)過二進制當(dāng)十進制已經(jīng)轉(zhuǎn)化為二進制后,可經(jīng)過二進制轉(zhuǎn)化為其它進制。轉(zhuǎn)化為其它進制。n例:二進制轉(zhuǎn)化為八進制:每三位二進制用一例:二進制轉(zhuǎn)化為八進制:每三位二進制用一位八進制數(shù)表示,從小數(shù)點開始,分別向左,位八進制數(shù)表示,從小數(shù)點開始,分別向左,向右,每三位一組,不足三位用零補足。向右,每三位一組,不足三位用零補足。n135.625Dn=010 000 111 .101 Bn=207.5Q202.1.3 二進制數(shù)的運算二進制數(shù)的運算 1. 二進制數(shù)的算術(shù)運算二進制數(shù)的算術(shù)運算 (1) 加加: 0+0=0 0+1=1 1+0=1 1
14、+1=0(進(進1) (2) 減減: 0-0=0 1-1=0 1-0=1 0-1=1(借位)(借位) (3) 乘乘: 0 0=0 0 1=0 1 0=0 1 1=1 (4) 除除: 二進制除法是乘法的逆運算。二進制除法是乘法的逆運算。 21 2. 二進制數(shù)的邏輯運算二進制數(shù)的邏輯運算 (1) “與與“運算(運算(AND), 用符號用符號“ ”或或“ ”表示。運算規(guī)則如下:表示。運算規(guī)則如下:0 0=0 0 1=0 1 0=0 1 1=1只有當(dāng)只有當(dāng)兩個變量均為兩個變量均為“1”時時,“與與”的結(jié)果的結(jié)果才為才為“1”。 22 (2) “或或”運算(運算(OR) 符號符號“ ”或或“+”表示。運
15、算規(guī)則如下:表示。運算規(guī)則如下:0 0=0 0 1=1 1 0=1 1 1=1兩個變量兩個變量只要有一個為只要有一個為“1”,“或或”的結(jié)果的結(jié)果就為就為“1”。 23 (3) “非非”運算(運算(NOT) (4) “異或異或”運算(運算(XOR) “異或異或”運算:運算: 兩變量兩變量只要不同只要不同,“異或異或”運算的運算的結(jié)果就為結(jié)果就為“1”。 10 01 01110111000024例例 2.7 A=11110101B, B=00110000B,求,求 ?BABABABABBA00110000BBA11110101BBA11000101BA00001010BB11001111解解25
16、2.2 帶符號數(shù)的表示及運算帶符號數(shù)的表示及運算 2.2.1 機器數(shù)與真值機器數(shù)與真值 為了區(qū)別正數(shù)和負數(shù),通常用二進制數(shù)的為了區(qū)別正數(shù)和負數(shù),通常用二進制數(shù)的最高位最高位表示數(shù)的表示數(shù)的符號符號。 字節(jié)型二進制數(shù)字節(jié)型二進制數(shù),D7位位為為符號位符號位,D6 D0位為數(shù)值位。位為數(shù)值位。 D7位位用用“0”表示正,表示正,“1”表示負。表示負。 把一個數(shù)及其符號位在機器中的一組二進制數(shù)表示形式,把一個數(shù)及其符號位在機器中的一組二進制數(shù)表示形式,稱為稱為“機器數(shù)機器數(shù)”。 機器數(shù)所表示的值稱為該機器數(shù)的機器數(shù)所表示的值稱為該機器數(shù)的“真值真值”。 262例:例:X1=+1001010B=+74
17、D=(01001010) 2 “+”轉(zhuǎn)化為轉(zhuǎn)化為0。 X2=-1001010B=-74D=(11001010)2 “-”轉(zhuǎn)化為轉(zhuǎn)化為1。X3=(01011011)2 =+91D X4=(11011011)2=-91D正數(shù)、負數(shù)正數(shù)、負數(shù)區(qū)別在最高位區(qū)別在最高位上,上,也就是符號位也就是符號位,其余其余7位表示數(shù)字位位表示數(shù)字位。nX1 的真值是的真值是74。 nX2的真值是的真值是74。n X3的真值是的真值是91。n X4的真值是的真值是91。272.2.2 2.2.2 機器數(shù)的表示方法(帶符號數(shù))機器數(shù)的表示方法(帶符號數(shù))1、原碼原碼:用用0表示正,用表示正,用1表示負的表示法為原碼表示
18、負的表示法為原碼。最高位是符號位,后面是數(shù)值。最高位是符號位,后面是數(shù)值。例:例:X=+105,X原碼原碼01101001B X=-105, X原碼原碼11101001 B 符號位符號位 數(shù)值數(shù)值0原碼原碼00000000B0原碼原碼10000000B 缺點缺點:零有兩個:零有兩個28 292、反碼反碼:a:正數(shù)的反碼與原碼正數(shù)的反碼與原碼相同。相同。 B:負數(shù)的反碼為其原碼負數(shù)的反碼為其原碼除符號位除符號位以外按位取反以外按位取反。例:例:X1=+1000001B, X2=-0101010B.則:則:X1反碼反碼01000001BX2原碼原碼10101010BX2反碼反碼11010101B3
19、0 例:已知:例:已知: X X1011011B 1011011B Y1011011B X X原碼原碼01011011B X01011011B X反碼反碼01011011B01011011B Y Y原碼原碼11011011B Y11011011B Y反碼反碼10100100B10100100B由此得出:互為相反數(shù)的兩個數(shù),由此得出:互為相反數(shù)的兩個數(shù),原碼最高位不同,反碼互為相反數(shù)。原碼最高位不同,反碼互為相反數(shù)。31 11反碼反碼00000001B 00000001B 11反碼反碼11111110B11111110B 127127反碼反碼01111111B 01111111B 127127反
20、碼反碼10000000B 10000000B 8 8位二進制反碼表示數(shù)的范圍為位二進制反碼表示數(shù)的范圍為-127-127 +127+127,1616位二進制反碼表示數(shù)的范圍為位二進制反碼表示數(shù)的范圍為-32767-32767 +32767+32767;“0”0”的反碼有兩種表示法:的反碼有兩種表示法:00000000B00000000B表示表示+0+0,11111111B11111111B表示表示-0-0。32字節(jié)字節(jié) 八八數(shù)據(jù)數(shù)據(jù) 地址地址 控制控制128+64+32+13=11101101.1B=0ED.8H128+32+16+5=181 -53 (11001010B)原原=-74(110
21、01011B)原原=-7533n1、如何用兩種方法求負數(shù)的補碼。(定、如何用兩種方法求負數(shù)的補碼。(定義,用對應(yīng)的相反正數(shù)的原碼)義,用對應(yīng)的相反正數(shù)的原碼)n2、BCD數(shù)。數(shù)。n3、N位二進制數(shù)所能表示的無符號數(shù)或位二進制數(shù)所能表示的無符號數(shù)或帶符號數(shù)的范圍是多少?帶符號數(shù)的范圍是多少?n4、進位和溢出的區(qū)別。、進位和溢出的區(qū)別。時間:時間:20109月月6日(第二周周一)日(第二周周一)本次課內(nèi)容:本次課內(nèi)容:343、補碼補碼正數(shù)的補碼與其原碼、反碼相同。正數(shù)的補碼與其原碼、反碼相同。負數(shù)的補碼是其反碼加一。負數(shù)的補碼是其反碼加一。(也就是原碼(也就是原碼除符號位除符號位按位取反后再加一)
22、按位取反后再加一) 例:已知例:已知: X1=+1010101B, 則則X1補碼補碼=01010101B X2=-0011001B,則則X2反碼反碼11100110B,X2補碼補碼11100111B反碼通常用作求補碼過程中的中間形式。反碼通常用作求補碼過程中的中間形式。35【例例】(1 1)X X1011011B 1011011B (2 2) Y Y1011011B 1011011B (1 1)根據(jù)定義有:)根據(jù)定義有: XX原碼原碼01011011B X01011011B X補碼補碼01011011B01011011B(2 2) 根據(jù)定義有:根據(jù)定義有: YY原碼原碼11011011B Y1
23、1011011B Y反碼反碼10100100B 10100100B Y Y補碼補碼10100101B10100101B36例:已知例:已知31補碼補碼11100001B,則則31反碼反碼11100000B,31原碼原碼10011111B求得規(guī)律:已知負數(shù)補碼,求其原碼時,求得規(guī)律:已知負數(shù)補碼,求其原碼時,符符號位不變號位不變,其余各位按位其余各位按位取反后加一取反后加一。37因為:正數(shù)補碼正數(shù)原碼因為:正數(shù)補碼正數(shù)原碼l正數(shù)原碼首位取反得到負數(shù)原碼;正數(shù)原碼首位取反得到負數(shù)原碼;l負數(shù)原碼除首位外按位取反后得到負數(shù)反碼。負數(shù)原碼除首位外按位取反后得到負數(shù)反碼。l負數(shù)反碼加一得到負數(shù)補碼。負數(shù)
24、反碼加一得到負數(shù)補碼。l所以,得到如下規(guī)律:所以,得到如下規(guī)律:l已知一個數(shù)的補碼,其相反數(shù)的補碼就是連其已知一個數(shù)的補碼,其相反數(shù)的補碼就是連其符號位取反后加一。上述稱為符號位取反后加一。上述稱為求補求補。正數(shù)原反補相同正數(shù)原反補相同負數(shù)原碼首為一負數(shù)原碼首為一除首取反為反碼除首取反為反碼末位加一得補碼末位加一得補碼38l例:已知例:已知X補碼補碼01010110B,l則則X補碼補碼10101010Bl 已知已知X補碼補碼10101110B,l則則X補碼補碼01010010Bl得到:得到:1補碼補碼l00000001B,l0補碼補碼l00000000Bl -1補碼補碼l11111111B,
25、l - 0補碼補碼l00000000B實際計算機在運算過程中,實際計算機在運算過程中,在信息處理中,在存儲過程在信息處理中,在存儲過程中,中,機器中的數(shù)一般用補碼機器中的數(shù)一般用補碼表示表示。39 4、原碼、補碼、反碼表示的十進制數(shù)范圍原碼、補碼、反碼表示的十進制數(shù)范圍以八位二進制數(shù)為例:以八位二進制數(shù)為例: 碼制碼制 二進制數(shù)二進制數(shù) 表示的相應(yīng)的十進制數(shù)范圍表示的相應(yīng)的十進制數(shù)范圍a、無符號數(shù)、無符號數(shù) 0000000011111111 0255b、原碼、原碼 0000000011111111 127127c、反碼、反碼 0000000011111111 127127d、補碼、補碼 000
26、0000011111111 128127 408位二進制位二進制無符號數(shù)無符號數(shù)原碼原碼反碼反碼補碼補碼000000000+0+00000000011+1+1+101111111127+127+127+12710000000128-0-127-12810000001129-1-126-12711111110254-126-1-211111111255-127-0-1以上為以上為8位二進制數(shù)表示的無符號數(shù)、原碼、反碼、位二進制數(shù)表示的無符號數(shù)、原碼、反碼、補碼的十進制數(shù)范圍。補碼的十進制數(shù)范圍。41思考:如果寫出思考:如果寫出4位二進制數(shù)和位二進制數(shù)和16位二進制數(shù)表示的無位二進制數(shù)表示的無符號
27、數(shù)、原碼、反碼、補碼的十進制數(shù)范圍,該如何?符號數(shù)、原碼、反碼、補碼的十進制數(shù)范圍,該如何?424位二進制位二進制無符號數(shù)無符號數(shù)原碼原碼反碼反碼補碼補碼00000+0+0000011+1+1+101117+7+7+710008-0-7-810019-1-6-7111014-6-1-2111115-7-0-14316位二進制位二進制無符號數(shù)無符號數(shù)原碼原碼反碼反碼補碼補碼00000000000000000+0+0000000000000000011+1+1+1011111111111111132767+32767+32767+32767100000000000000032768-0-32767
28、-32768100000000000000132769-1-32766-32767111111111111111065534-32766-1-2111111111111111165535-32767-0-144 補碼表示的整數(shù)范圍是補碼表示的整數(shù)范圍是2 2n-1n-1 (2 2n-1n-11 1),),其中其中n n為機器字長。為機器字長。 則:則:8 8位二進制補碼表示的整數(shù)范圍是位二進制補碼表示的整數(shù)范圍是1281281271271616位二進制補碼表示的整數(shù)范圍是位二進制補碼表示的整數(shù)范圍是32768327683276732767 當(dāng)運算結(jié)果超出這個范圍時,就不能正確表示數(shù)當(dāng)運算結(jié)果超
29、出這個范圍時,就不能正確表示數(shù)了,此時稱為了,此時稱為溢出溢出。 45補碼的擴展:補碼的擴展: 符號位的值擴展到高八位上。符號位的值擴展到高八位上。 數(shù)值數(shù)值 八位表示八位表示 十六位表示十六位表示 +1 0000 0001B 0000 0000 0000 0001B -1 1111 1111B 1111 1111 1111 1111B補碼相加:補碼相加:X=11-6=5 X補補=11補補+-6補補 0000 1011B =0000 1011B+1111 1010B + 1111 1010B =0000 0101 B 1 0000 0101B 46 1. 補碼加法補碼加法 在計算機中,凡是在計
30、算機中,凡是帶符號數(shù)一律用補碼帶符號數(shù)一律用補碼表示,運算結(jié)表示,運算結(jié)果自然也是補碼。其運算特點是:符號位和數(shù)值位一起參加果自然也是補碼。其運算特點是:符號位和數(shù)值位一起參加運算,并且自動獲得結(jié)果(包括符號位與數(shù)值位)。運算,并且自動獲得結(jié)果(包括符號位與數(shù)值位)。 補碼加法的運算規(guī)則為:補碼加法的運算規(guī)則為:即:兩數(shù)補碼的和等于兩數(shù)和的補碼。即:兩數(shù)補碼的和等于兩數(shù)和的補碼。 補補補yxyx四、四、 補碼的加減運算補碼的加減運算47 【例例】已知已知 +51+51補補=0011 0011B=0011 0011B, +66+66補補=0100 0010B=0100 0010B, -51-51
31、補補=1100 1101B=1100 1101B, -66-66補補=1011 1110B=1011 1110B 求求 +66+66補補+51+51補補= =? +66+66補補+-51+-51補補= =? -66-66補補+-51+-51補補= =? 48由于由于 +66補補+51補補=(+66)+(+55)補補=01110101B結(jié)果為正,結(jié)果為正,因此因此 (+66)+(+55)原原=(+66)+(+55)補補=01110101B其真值為其真值為+117,計算結(jié)果正確。,計算結(jié)果正確。 二進制二進制( (補碼補碼) )加法加法 十進制加法十進制加法0100 0010 + 66補補 + 6
32、6+)0011 0011 + 51補補 +) + 510111 0101 +117補補 +117 49由于由于 +66補補+51補補=(+66)+(55)補補=0000111B 結(jié)果為正,結(jié)果為正,因此因此 (+66)+(55)原原=(+66)+(55)補補=00001111其真值為其真值為+15,計算結(jié)果正確。,計算結(jié)果正確。 二進制二進制( (補碼補碼) )加法加法 十進制加法十進制加法 0100 0010 + 66補補 +66+) 1100 1101 51補補 +) 51 0000 1111 +15補補 +151自動丟失自動丟失50例:例:X=+0001111B=+15,Y=+10000
33、00B=64,求,求X+Y解:解:X補補=00001111B Y補補=01000000B 00001111B + 01000000B 01001111B=+79=X+Y補補=X+Y,結(jié)果正確。結(jié)果正確。51例:例:X=-0001111B=-15,Y=+1000000B=64,求,求X+Y解:解:X補補=11110001B y補補=01000000B 11110001B + 01000000B 1 00110001B=+49=X+Y補補=X+Y,結(jié)果正確結(jié)果正確課下,大家可以試一下如果用原碼或者反碼計算課下,大家可以試一下如果用原碼或者反碼計算的話是否正確。的話是否正確。52 2. 補碼減法補碼
34、減法 補碼減法的運算規(guī)則為:補碼減法的運算規(guī)則為: 補補補補補yxyxyx請同學(xué)們計算請同學(xué)們計算6666515153 無符號數(shù)無符號數(shù) 帶符號數(shù)帶符號數(shù) 11100001 225 31補補+) 00001101 +) 13 +) +13補補 11101110 238 18補補54 1. 進位與溢出進位與溢出 所謂所謂進位進位,是指運算結(jié)果的最高位向更高位的進位,用來,是指運算結(jié)果的最高位向更高位的進位,用來判斷判斷無符號數(shù)無符號數(shù)運算結(jié)果是否運算結(jié)果是否超出超出了計算機所能表示的了計算機所能表示的最大無符最大無符號數(shù)的范圍號數(shù)的范圍。 溢出溢出是指是指帶符號數(shù)的帶符號數(shù)的補碼補碼運算溢出,用
35、來判斷帶符號數(shù)補運算溢出,用來判斷帶符號數(shù)補碼運算結(jié)果是否超出了碼運算結(jié)果是否超出了補碼所能表示的范圍補碼所能表示的范圍。如果運算結(jié)果超。如果運算結(jié)果超出此范圍,就叫補碼溢出,簡稱溢出。出此范圍,就叫補碼溢出,簡稱溢出。 2.3.5 2.3.5 進位與溢出進位與溢出552. 溢出的判斷方法溢出的判斷方法雙高位溢出判別法雙高位溢出判別法CF 最高位的進位最高位的進位DF 次高位的進位次高位的進位對對CF、DF作異或運算,若作異或運算,若:0 無溢出無溢出1 溢出溢出56 【習(xí)題習(xí)題1】 x=01000100B,y=01001000B,計算,計算x+y,試問:,試問: 若為無符號數(shù),計算結(jié)果是否正
36、確?若為無符號數(shù),計算結(jié)果是否正確? 若為帶符號補碼若為帶符號補碼數(shù),計算結(jié)果是否溢出?數(shù),計算結(jié)果是否溢出? 無符號數(shù)無符號數(shù) 帶符號數(shù)帶符號數(shù) 01000100 68 +68補補+)01001000 +)72 +) +72補補 10001100 140 +140補補DF=1CF=0 若為無符號數(shù),由于若為無符號數(shù),由于CF=0,計算結(jié)果正確。,計算結(jié)果正確。 若為帶符號數(shù)補碼,由于結(jié)果溢出因此結(jié)果是錯誤的。若為帶符號數(shù)補碼,由于結(jié)果溢出因此結(jié)果是錯誤的。 57 【習(xí)題習(xí)題2】設(shè)有兩個操作數(shù)設(shè)有兩個操作數(shù)x=11101110B,y=11001000B,將這兩,將這兩個操作數(shù)送運算器做加法運算
37、,試問:個操作數(shù)送運算器做加法運算,試問: 若為無符號數(shù),計算若為無符號數(shù),計算結(jié)果是否正確?結(jié)果是否正確? 若為帶符號補碼數(shù),計算結(jié)果是否溢出若為帶符號補碼數(shù),計算結(jié)果是否溢出? 解解 無符號數(shù)無符號數(shù) 帶符號數(shù)帶符號數(shù) 11101110 238 18補補+)11001000 +)200 +) 56補補 10110110 438 74補補DF=1CF=11自動丟失自動丟失 若為無符號數(shù),由于若為無符號數(shù),由于CF=1,計算,計算溢出因此結(jié)果是錯誤的溢出因此結(jié)果是錯誤的. 若為帶符號數(shù)補碼,若為帶符號數(shù)補碼,結(jié)果正確。結(jié)果正確。 58兩個正數(shù)相加可能產(chǎn)生正的溢出,兩個負數(shù)相加兩個正數(shù)相加可能產(chǎn)
38、生正的溢出,兩個負數(shù)相加可能會產(chǎn)生負的溢出,正負兩數(shù)相加不會產(chǎn)生溢出??赡軙a(chǎn)生負的溢出,正負兩數(shù)相加不會產(chǎn)生溢出。例:例: CF DF 0 1 0 0 0 0 0 0B + 64 + 0 1 0 0 0 0 0 1B + 65 1 0 0 0 0 0 0 1B + 129+127, 結(jié)結(jié)果錯誤,溢出果錯誤,溢出 兩個正數(shù)相加,結(jié)果為負數(shù)形式,這是由于兩個正數(shù)相加,結(jié)果為負數(shù)形式,這是由于+129+127的原因的原因59例:計算例:計算-128-1 CF DF -128補補 = 1 0 0 0 0 0 0 0 B + -1補補 = 1 1 1 1 1 1 1 1B + 1 0 1 1 1 1
39、1 1 1B=+127 兩個負數(shù)相加,結(jié)果為正數(shù)形式,這是由于兩個負數(shù)相加,結(jié)果為正數(shù)形式,這是由于-128-1=-129-128的原因。的原因。例:計算例:計算64-1 CF DF +64補補=0 1 0 0 0 0 0 0B + -1補補=1 1 1 1 1 1 1 1B 1 0 0 1 1 1 1 1 1B=+63 運算結(jié)果正確。運算結(jié)果正確。601 1、 二二十進制編碼十進制編碼BCDBCD碼碼BCDBCD(Binary-Coded DecimalBinary-Coded Decimal)碼又稱為)碼又稱為“二二十進制編十進制編碼碼”,專門解決用二進制數(shù)表示十進數(shù)的問題。最常用的,專門
40、解決用二進制數(shù)表示十進數(shù)的問題。最常用的是是84218421編碼,其方法是用編碼,其方法是用4 4位二進制數(shù)表示位二進制數(shù)表示1 1位十進制數(shù)。位十進制數(shù)。1 1)壓縮)壓縮BCDBCD碼:每一位數(shù)用碼:每一位數(shù)用4 4位二進制數(shù)來表示,即一位二進制數(shù)來表示,即一個字節(jié)表示個字節(jié)表示2 2位十進制數(shù)。位十進制數(shù)。如:(如:(1000100110001001)BCDBCD89D89D。2)2)非壓縮非壓縮BCDBCD碼:每一位數(shù)用碼:每一位數(shù)用8 8位二進制數(shù)來表示,即一位二進制數(shù)來表示,即一個字節(jié)表示個字節(jié)表示1 1位十進制數(shù)。而且只用每個字節(jié)的低位十進制數(shù)。而且只用每個字節(jié)的低4 4位來位來
41、表示表示0 09 9,高,高4 4位為位為0 0。 如:如:89D89D(00001000 0000100100001000 00001001)BCDBCD 六、六、 字符編碼字符編碼61表表2.2 8421 BCD 碼部分編碼表碼部分編碼表 十進制數(shù)十進制數(shù) 壓縮壓縮BCD碼碼 非壓縮非壓縮BCD碼碼 1 2 3 M M 9 10 11 M 19 20 21 00000001 00000010 00000011 M 00001001 00010000 00010001 M 00011001 00100000 00100001 00000001 00000010 00000011 M 0000
42、1001 00000001 00000000 00000001 00000001 M 00000001 00001001 00000010 00000000 00000010 00000001 62例例 十進制數(shù)與十進制數(shù)與BCD數(shù)相互轉(zhuǎn)換。數(shù)相互轉(zhuǎn)換。 將十進制數(shù)將十進制數(shù)69.81轉(zhuǎn)換為壓縮型轉(zhuǎn)換為壓縮型BCD數(shù):數(shù): 69.81=(0110 1001.1000 0001)BCD 將將BCD數(shù)數(shù)1000 1001.0110 1001轉(zhuǎn)換為十進制數(shù):轉(zhuǎn)換為十進制數(shù): (1000 1001.0110 1001)BCD=89.69 63 【例例】設(shè)設(shè)x=10010110B,當(dāng),當(dāng)x分別為無符號數(shù)
43、、原碼、分別為無符號數(shù)、原碼、補碼、壓縮型補碼、壓縮型BCD碼時,試分別計算碼時,試分別計算x所代表的數(shù)值大小。所代表的數(shù)值大小。解解 無符號數(shù):無符號數(shù):x=150 原碼:原碼:x原原=10010110Bx= 22 補碼:補碼:x補補=10010110B x原原=x補補補補=11101010B x= 106 BCD碼:碼:xBCD=10010110B x=96642、字符的、字符的ASCII碼(碼(AMERICAN STANDARD CODE FORINFORMATION INTERCHANG 美國標(biāo)準(zhǔn)信息交換碼美國標(biāo)準(zhǔn)信息交換碼)微機中常用的是微機中常用的是ASCII碼(美國信息交換標(biāo)準(zhǔn)代碼)碼(美國信息交換標(biāo)準(zhǔn)代碼),如后如后表所示表所示 它包括它包括10個十進制數(shù)碼,個十進制數(shù)碼,26個英文字母和一些專用個英文字母和一些專用符號,總共符號,總共128個字符的個字符的ASCII碼,因此,只需要一個字節(jié)碼,因此,只需要一個字節(jié)中的低中的低7位編碼,當(dāng)最高位恒取位編碼,當(dāng)最高位恒取0,稱作空格校驗,稱作空格校驗.用七位二進制數(shù)編碼對字符進行編碼,位用七位二進制數(shù)編碼對字符進行編碼,位7是零。是零。熟記下面的熟記
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋁扣板天花吊頂工程驗收合同
- 小學(xué)生校園生活征文
- 農(nóng)業(yè)現(xiàn)代化智能種植數(shù)據(jù)平臺建設(shè)方案
- O2O生活服務(wù)平臺運營服務(wù)合同
- 新材料研發(fā)及生產(chǎn)供應(yīng)合同
- 公司對公司的借款合同
- 物聯(lián)網(wǎng)智能家居系統(tǒng)建設(shè)合同
- 智能農(nóng)業(yè)設(shè)備銷售及安裝合同
- 通信行業(yè)光網(wǎng)絡(luò)優(yōu)化方案
- 電子設(shè)備技術(shù)合作開發(fā)協(xié)議
- 應(yīng)用寫作-終結(jié)性考核-國開(SC)-參考資料
- 2025年慢性阻塞性肺疾病全球創(chuàng)議GOLD指南修訂解讀課件
- 同步課件1:新時代中國特色社會主義的偉大成就
- GB/T 44143-2024科技人才評價規(guī)范
- 世界舞臺上的中華文明智慧樹知到期末考試答案章節(jié)答案2024年重慶大學(xué)
- 學(xué)校2024-2025年工作計劃
- 人文英語4寫作
- 廣東佛山生育保險待遇申請表
- 課程思政示范課程—課程思政矩陣圖(示例)
- 中學(xué)德育工作會議記錄
- 小班幼兒生活自理情況調(diào)查問卷
評論
0/150
提交評論