版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
課程學(xué)時(shí):64學(xué)時(shí)(48理論+16實(shí)驗(yàn))上課時(shí)間地點(diǎn):周二1~2節(jié)三教104(3~4節(jié)二教101)周五1~2節(jié)三教104(3~4節(jié)二教101)實(shí)驗(yàn)地點(diǎn):第九實(shí)驗(yàn)樓201、213課程簡(jiǎn)介課程名稱:微機(jī)原理與接口技術(shù)課程性質(zhì):必修學(xué)習(xí)目的:微型計(jì)算機(jī)系統(tǒng)(Micro-ComputerSystemandApplications)應(yīng)用與開發(fā)(而非使用)的基礎(chǔ)。學(xué)習(xí)方法:勤奮、興趣、練習(xí)(作業(yè)、實(shí)驗(yàn))與后續(xù)課程關(guān)系:?jiǎn)纹瑱C(jī)原理及應(yīng)用、計(jì)算機(jī)控制技術(shù)、嵌入式系統(tǒng)開發(fā)及應(yīng)用掌握微機(jī)系統(tǒng)的基本組成、工作原理、接口電路及硬件的連接,建立微機(jī)系統(tǒng)的概念,具備初步開發(fā)微機(jī)系統(tǒng)軟、硬件的能力。教材楊素行,微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用(第3版),清華大學(xué)出版社,2009參考教材1、微機(jī)原理與接口技術(shù)第二版作者:彭虎電子工業(yè)出版社2009年2、80X86/Pentium微機(jī)原理與接口技術(shù)第二版作者:余春暄機(jī)械工業(yè)出版社2008年3、微機(jī)原理及接口技術(shù)第三版作者:龔尚福西安電子科技大學(xué)出版社
2005年1.1無(wú)符號(hào)數(shù)的表示及運(yùn)算1.1.1無(wú)符號(hào)數(shù)的表示及運(yùn)算1、無(wú)符號(hào)數(shù)的表示法(1)十進(jìn)制數(shù)的表示法十進(jìn)制計(jì)數(shù)法的特點(diǎn)是:以10為底,逢10進(jìn)1,借1當(dāng)10。需要10個(gè)數(shù)字符號(hào)(基數(shù))0,1,2,…,9。例如:125.6,58,63;十進(jìn)制的后綴是D,可以省略不寫。
(2)二進(jìn)制數(shù)的表示法二進(jìn)制計(jì)數(shù)法的特點(diǎn)是:以2為底,逢2進(jìn)1,借1當(dāng)2。
需要兩個(gè)數(shù)字符號(hào)0,1。二進(jìn)制的后綴是BB、1100.11011B
八進(jìn)制數(shù)的特點(diǎn)是“逢8進(jìn)1,借1當(dāng)8”,需要用到的數(shù)字符號(hào)為8個(gè),分別是0~7。(大型、巨型機(jī)使用較多),后綴為O或Q
例如:13Q、734Q(4)十六進(jìn)制數(shù)的表示方法十六進(jìn)制數(shù)的特點(diǎn)是“逢16進(jìn)1,借1當(dāng)16”,需要用到的數(shù)字符號(hào)為16個(gè),分別是0~9、A~F,后綴為H.
例如:E5AD.BFH、1234H(3)八進(jìn)制的表示方法其中
為整數(shù)部分,為小數(shù)部分(1)任意進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)任意進(jìn)制數(shù)的通式表達(dá):2、數(shù)制轉(zhuǎn)換n為整數(shù)位數(shù),m為小數(shù)位數(shù)di為位碼ri為位權(quán)十進(jìn)制二進(jìn)制(2)十進(jìn)制數(shù)與二進(jìn)制數(shù)之間的轉(zhuǎn)換
1)十進(jìn)制整數(shù)轉(zhuǎn)換成二進(jìn)制整數(shù):方法:除2取余法,結(jié)果倒排列。具體做法:將十進(jìn)制數(shù)除以2,得到一個(gè)商和一個(gè)余數(shù);再將商除以2,又得到一個(gè)商和一個(gè)余數(shù);繼續(xù)這一過(guò)程,直到商等于0為止。每次得到的余數(shù)(必定是0或1)就是對(duì)應(yīng)的二進(jìn)制數(shù)的各位數(shù)字。
注意:第一次得到的余數(shù)為二進(jìn)制數(shù)的最低位,最后得到的余數(shù)為二進(jìn)制數(shù)的最高位。【例1-1】將十進(jìn)制數(shù)97轉(zhuǎn)換成二進(jìn)制數(shù)。其過(guò)程如下:最后結(jié)果為:(97)10=(A6A5A4A3A2A1A0)2=(1100001)2余數(shù)為0,結(jié)束297余數(shù)為1,即A0=1482余數(shù)為0,即A1=0242余數(shù)為0,即A2=0122余數(shù)為0,即A3=062余數(shù)為0,即A4=0321余數(shù)為1,即A5=10余數(shù)為1,即A6=122)十進(jìn)制小數(shù)轉(zhuǎn)換成二進(jìn)制小數(shù)方法:乘2取整,結(jié)果順排列。具體做法:用2乘以十進(jìn)制小數(shù),得到整數(shù)和小數(shù)部分;再用2乘以小數(shù)部分,又得到一個(gè)整數(shù)和一個(gè)小數(shù)部分;繼續(xù)這一過(guò)程,直到余下的小數(shù)部分為0或滿足精度要求為止;最后將每次得到的整數(shù)部分(必定是0或1)按先后順序從左到右排列,即得到所對(duì)應(yīng)的二進(jìn)制小數(shù)。為了將一個(gè)既有整數(shù)又有小數(shù)部分的十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù),可以將其整數(shù)部分和小數(shù)部分分別進(jìn)行轉(zhuǎn)換,然后再組合起來(lái)。例如:(97)10=(1100001)2(0.6875)10=(0.1011)2由此可得:(97.6875)10=(1100001.1011)2十進(jìn)制與N進(jìn)制之間的轉(zhuǎn)換規(guī)則:整數(shù)部分:除N取余,結(jié)果倒排序小數(shù)部分:乘N取整,結(jié)果正排序補(bǔ)充:用降冪法將十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)首先寫出要轉(zhuǎn)換的十進(jìn)制數(shù),其次寫出所有小于此數(shù)的各位二進(jìn)制權(quán)值,然后用要轉(zhuǎn)換的十進(jìn)制數(shù)減去與它最相近的二進(jìn)制權(quán)值,如夠減則減去并在相應(yīng)位記以1;如不夠減則在相應(yīng)位記以0并跳過(guò)此位;如此不斷反復(fù),直到該數(shù)為0為止。常用二進(jìn)制權(quán)值為:
整數(shù)部分:212=4096、211=2048、210=1024、29=512、28=256、27=128、26=64、25=32、24=16、23=8、22=4、21=2、20=1
小數(shù)部分:2-1=0.5、2-2=0.25、2-3=0.125、2-4=0.0625、2-5=0.031252112102928272625242322212020481024512256128643216842121921821721621521421321252428826214131072655363276816384819240962-12-22-32-42-50.50.250.1250.06250.03125整數(shù)部分小數(shù)部分整數(shù)部分:小數(shù)部分:例1.2(補(bǔ)充)
N=0.8125D,小于此數(shù)的二進(jìn)制權(quán)為:0.50.250.1250.06250.03125計(jì)算過(guò)程如下:0.8125-2-1=0.8125-0.5=0.3125(b1=1)0.3125-2-2=0.3125-0.25=0.0625(b2=1)0.0625-2-3=0.0625-0.125不夠減(b3=0)0.0625-2-4=0.0625-0.0625=0(b4=1)
N=0.8125D=0.1101B所以:117.8125=1110101.1101B思考:1028694100等轉(zhuǎn)換成二進(jìn)制數(shù),體驗(yàn)降冪法的優(yōu)點(diǎn)1028=10000000100B1024469=1000101B64414100=1000000000100B409641028?69?4100?表1-1十、二、八、十六進(jìn)制數(shù)碼的對(duì)應(yīng)關(guān)系
十進(jìn)制二進(jìn)制八進(jìn)制十六進(jìn)制00000001000111200102230011334010044501015560110667011177(3)二進(jìn)制與八進(jìn)制、十六進(jìn)制數(shù)之間的轉(zhuǎn)換
【例1-10】直接將二進(jìn)制數(shù)11110.11轉(zhuǎn)換成八進(jìn)制數(shù)。1)二進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)
方法:從小數(shù)點(diǎn)所在位置分別向左或向右每三位一組進(jìn)行劃分。若小數(shù)點(diǎn)左側(cè)的位數(shù)不是3的整數(shù)倍,在數(shù)的最左側(cè)補(bǔ)零;若小數(shù)點(diǎn)右側(cè)的位數(shù)不是3的整數(shù)倍,在數(shù)的最右側(cè)補(bǔ)零。然后參照表1-1,將每三位二進(jìn)制數(shù)轉(zhuǎn)換成對(duì)應(yīng)的一位八進(jìn)制數(shù),即為二進(jìn)制數(shù)對(duì)應(yīng)的八進(jìn)制數(shù)。011110.110
36.6
所以:(11110.110)2=(36.6)8
2)八進(jìn)制數(shù)轉(zhuǎn)換二進(jìn)制數(shù)
方法:將每一位八進(jìn)制數(shù)分解成對(duì)應(yīng)的三位二進(jìn)制數(shù),即為八進(jìn)制數(shù)對(duì)應(yīng)的二進(jìn)制數(shù)。
【例1-11】直接將八進(jìn)制數(shù)35.6轉(zhuǎn)換成二進(jìn)制數(shù)。其過(guò)程如下:3 5 .6011101 .110
所以:(35.6)8=(11101.110)2
3)二進(jìn)制數(shù)轉(zhuǎn)換成十六進(jìn)制數(shù)
方法:從小數(shù)點(diǎn)所在位置分別向左向右每四位一組進(jìn)行劃分。若小數(shù)點(diǎn)左側(cè)的位數(shù)不是4的整數(shù)倍,在數(shù)的最左側(cè)補(bǔ)零;若小數(shù)點(diǎn)右側(cè)的位數(shù)不是4的整數(shù)倍,在數(shù)的最右側(cè)補(bǔ)零。然后參照表1-1,將每四位二進(jìn)制數(shù)轉(zhuǎn)換成對(duì)應(yīng)的一位十六進(jìn)制數(shù),即為二進(jìn)制數(shù)對(duì)應(yīng)的十六進(jìn)制數(shù)。
【例1-12】直接將二進(jìn)制11110.11轉(zhuǎn)換成十六進(jìn)制數(shù)。11110.11001E.C
所以:(11110.11)2=(1E.C)16110101101101101101.110011101B35B6DCE8=35B6D.CE8H(1)二進(jìn)制的算術(shù)運(yùn)算:加法規(guī)則:減法運(yùn)算乘法運(yùn)算0+0=00-0=01*0=00+1=11-1=00*1=01+0=11-0=11*0=01+1=0(進(jìn)位1)0-1=1(有借位)1*1=13、二進(jìn)制的運(yùn)算1)
“與”運(yùn)算(AND)“與”運(yùn)算又稱邏輯乘,用符號(hào)·或∧表示。其運(yùn)算規(guī)則為0·0=00·1=01·0=01·1=1當(dāng)兩個(gè)邏輯變量取值均為1時(shí),它們“與”的結(jié)果才為1。(2)二進(jìn)制數(shù)的邏輯運(yùn)算
下面舉例說(shuō)明邏輯運(yùn)算方法。
例如,X=00F0H,Y=7777H,求X∧Y,X∨Y,X⊕Y。其運(yùn)算結(jié)果如下:00000000111100000111011101110111AND
0000000001110000=0070H00000000111100000111011101110111OR
0111011111110111=77F7H00000000111100000111011101110111XOR0111011110000111=7787H05C3H+3D25H=?05C33D2542E83D25H-05C3H=?3D2505C3_3762按逢16進(jìn)1的規(guī)則進(jìn)行加法運(yùn)算+3)十六進(jìn)制數(shù)算術(shù)運(yùn)算:按借1當(dāng)16的規(guī)則進(jìn)行減法運(yùn)算1.1.2帶符號(hào)數(shù)的表示及運(yùn)算日常生活中遇到的數(shù),除上述的無(wú)符號(hào)數(shù)外,還有大量的帶符號(hào)數(shù)。數(shù)的符號(hào)在計(jì)算機(jī)中也用二進(jìn)制數(shù)表示,通常用二進(jìn)制數(shù)的最高位表示數(shù)的符號(hào),0代表正數(shù),1代表負(fù)數(shù)。機(jī)器數(shù):把一個(gè)數(shù)及其符號(hào)在機(jī)器中的表示加以數(shù)值化,這樣的數(shù)稱為機(jī)器數(shù),
真值:機(jī)器數(shù)所代表的數(shù)稱為該機(jī)器數(shù)的真值。機(jī)器數(shù)可以用不同方法表示,常用的有原碼、反碼和補(bǔ)碼表示法。1、帶符號(hào)數(shù)的表示方法(1)原碼
數(shù)x的原碼記作[x]原,如機(jī)器字長(zhǎng)為n,則原碼的定義:
原碼編碼規(guī)則:最高位為符號(hào)位,正數(shù)為0,負(fù)數(shù)為1,其余n-1位表示數(shù)的絕對(duì)值。原碼表示數(shù)的范圍為:-(2n-1-1)~+(2n-1-1)n=8:-127~+127n=16:-32767~+32767
在原碼的表示中,真值0的原碼可表示為兩種不同的形式,+0和-0。[x]原=例如,n=8時(shí),[+0]原=00000000,[-0]原=10000000[+1]原=00000001,[-1]原=10000001[+127]原=01111111,[-127]原=11111111[+56]原=00111000。[-56]原=10111000。N=16時(shí)
[+1]原=0000000000000001,[-1]原=1000000000000001[+32767]原=0111111111111111,[-32767]原=1111111111111111原碼表示法簡(jiǎn)單直觀,但不便于進(jìn)行加減運(yùn)算(2)反碼數(shù)x的反碼記作[X]反,如機(jī)器字長(zhǎng)為n,反碼定義為:[x]反=
反碼編碼規(guī)則:最高位為符號(hào)位,正數(shù)為0,負(fù)數(shù)為1,正數(shù)的反碼與原碼相同,負(fù)數(shù)的反碼只需將其對(duì)應(yīng)的正數(shù)的反碼(包括符號(hào)位)按位求反即可。反碼表示數(shù)的范圍為:-(2n-1-1)~+(2n-1-1)n=8:-127~+127n=16:-32767~+32767
例如,n=8時(shí),[+0]反=00000000[-0]反=11111111[+1]反=00000001[-1]反=11111110[+127]反=01111111[-127]反=10000000[+56]反=00111000[-56]反=11000111在反碼的表示中,真值0的反碼也可表示為兩種不同的形式,+0和-0:(3)補(bǔ)碼數(shù)x的補(bǔ)碼記作[X]補(bǔ),如機(jī)器字長(zhǎng)為n,補(bǔ)碼定義為:[x]補(bǔ)=補(bǔ)碼表示數(shù)的范圍為:-2n-1~+(2n-1-1)n=8:-128~+127n=16:-32768~+32767
補(bǔ)碼編碼規(guī)則:最高位為符號(hào)位,正數(shù)為0,負(fù)數(shù)為1,正數(shù)的補(bǔ)碼與它的反碼與原碼均相同,負(fù)數(shù)的補(bǔ)碼等于它的反碼加1,即負(fù)數(shù)的補(bǔ)碼等于其對(duì)應(yīng)正數(shù)的補(bǔ)碼按位求反(包括符號(hào)位)再加1即可。當(dāng)n=8時(shí),[+0]補(bǔ)=00000000
[-0]
補(bǔ)=00000000
[+1]補(bǔ)=00000001[-1]補(bǔ)=11111111[+127]補(bǔ)=01111111[-127]
補(bǔ)=10000001[+56]補(bǔ)=00111000[-56]補(bǔ)=11001000
①在補(bǔ)碼表示法中,0只有一種表示,即000…000。
②對(duì)于10000000這個(gè)補(bǔ)碼編碼,其真值被定義為-128。負(fù)數(shù)的補(bǔ)碼等于其對(duì)應(yīng)正數(shù)的補(bǔ)碼按位求反(包括符號(hào)位)再加1
【例1】機(jī)器字長(zhǎng)n=8位,X=+48D,求[X]補(bǔ)。
首先將+48D轉(zhuǎn)換為二進(jìn)制數(shù):+110000B。
因?yàn)闄C(jī)器字長(zhǎng)是8位,其中符號(hào)占了1位,所以數(shù)值只占7位。將+110000B寫成+0110000B,[+48]補(bǔ)=00110000B,寫成十六進(jìn)制數(shù)為30H,即[+48]補(bǔ)
=30H?!纠?】機(jī)器字長(zhǎng)n=8位,X=-48D,求[X]補(bǔ)。[+48]補(bǔ)=00110000B
11001111
+1
11010000[-48]補(bǔ)=11010000B=D0H
【例3】機(jī)器字長(zhǎng)n=16位,X=+48D,求[X]補(bǔ)
+48D轉(zhuǎn)換為二進(jìn)制數(shù):+110000B。
因?yàn)闄C(jī)器字長(zhǎng)是16位,其中符號(hào)占了1位,所以數(shù)值占15位。將+110000B寫成+000000000110000B。[+48]補(bǔ)
=0000000000110000B,用十六進(jìn)制數(shù)為:
[+48]補(bǔ)=0030H。[+48]補(bǔ)=00110000B=30H用8位數(shù)表示時(shí)符號(hào)位擴(kuò)展
【例4】
機(jī)器字長(zhǎng)n=16位,X=-48D,求[X]補(bǔ)。
48D轉(zhuǎn)換為二進(jìn)制數(shù):110000B。
因?yàn)闄C(jī)器字長(zhǎng)是16位,其中符號(hào)占了1位,所以數(shù)值占15位。將110000B寫成000000000110000B。[+48]原碼
0000000001100000B連同符號(hào)位按位求反:1111111111001111B末位加1+1
所以[-48]補(bǔ)
=1111111111010000B寫成十六進(jìn)制數(shù)為0FFD0H,即[-48]補(bǔ)
=0FFD0H。[-48]補(bǔ)
=
11010000B=0D0H用8位數(shù)表示時(shí)符號(hào)位擴(kuò)展補(bǔ)碼數(shù)要擴(kuò)展時(shí),正數(shù)是在符號(hào)的前面補(bǔ)0,負(fù)數(shù)是在符號(hào)的前面補(bǔ)1。補(bǔ)碼數(shù)擴(kuò)展實(shí)際上是符號(hào)擴(kuò)展。表1.1原碼、反碼和補(bǔ)碼表無(wú)符號(hào)數(shù)二進(jìn)制數(shù)帶符號(hào)數(shù)原碼補(bǔ)碼反碼000000000+0+0+0100000001+1+1+1200000010+2+2+2….……..…..…..…..12601111110+126+126+12612701111111+127+127+12712810000000-0-128-12712910000001-1-127-126…..………..…..….25311111101-125-3-225411111110-126-2-125511111111-127-1-02.真值與補(bǔ)碼之間的轉(zhuǎn)換(1)真值補(bǔ)碼(2)補(bǔ)碼真值已知補(bǔ)碼求真值的方法:當(dāng)機(jī)器數(shù)的最高位(符號(hào)位)為0時(shí),表示真值是正數(shù),其值等于其余n-1位的值;當(dāng)機(jī)器數(shù)的最高位(符號(hào)位)為1時(shí),表示真值是負(fù)數(shù),其值等于其余n-1位按位取反后末位加1的值。【例1】求以下補(bǔ)碼的真值①[x]補(bǔ)=01111110求x②[x]補(bǔ)=10000010求x解:①
[x]補(bǔ)=01111110符號(hào)位為0,是正數(shù),真值=126②[x]補(bǔ)=10000010符號(hào)位是1,是負(fù)數(shù)0000010按位取反1111101末位加1+1
1111110真值為-1263.補(bǔ)碼的運(yùn)算(1)補(bǔ)碼的加法:
[X+Y]補(bǔ)
=[X]補(bǔ)
+[Y]補(bǔ)已知:[+51]補(bǔ)=00110011[+66]補(bǔ)=01000010[-51]補(bǔ)=11001101[-66]補(bǔ)=1011
1110
+66
+)+51+117②+66
+)-51+1501000010=[+66]補(bǔ)
+)00110011=[+51]補(bǔ)01110101=[+117]補(bǔ)01000010=[+66]補(bǔ)
+)11001101=[-51]補(bǔ)
100001111=[+15]補(bǔ)③-66
+)+51-15已知:[+51]補(bǔ)=00110011[+66]補(bǔ)=01000010[-51]補(bǔ)=11001101[-66]補(bǔ)=1011
111010111110=[-66]補(bǔ)
+)00110011=[+51]補(bǔ)11110001=[-15]補(bǔ)④-66
+)-51-117不論被加數(shù)、加數(shù)是正數(shù)還是負(fù)數(shù),只要直接用它們的補(bǔ)碼(包括符號(hào)位)相加,當(dāng)結(jié)果不超出補(bǔ)碼表示范圍時(shí),運(yùn)算結(jié)果是正確的補(bǔ)碼。②、④中由最高位向更高位的進(jìn)位由于機(jī)器字長(zhǎng)的限制而自動(dòng)丟失,不會(huì)影響運(yùn)算結(jié)果的正確性。10111110=[-66]補(bǔ)
+)11001101=[-51]補(bǔ)
110001011=[-117]補(bǔ)(2)補(bǔ)碼減法[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)已知:[+51]補(bǔ)=00110011[+66]補(bǔ)=01000010[-51]補(bǔ)=11001101[-66]補(bǔ)=1011
1110①+66
-)+51+1501000010=[+66]補(bǔ)
+)11001101=[-51]補(bǔ)
100001111=[+15]補(bǔ)②+66
-)-51+11701000010=[+66]補(bǔ)
+)00110011=[+51]補(bǔ)01110101=[+117]補(bǔ)[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)已知:[+51]補(bǔ)=00110011[+66]補(bǔ)=01000010[-51]補(bǔ)=11001101[-66]補(bǔ)=1011
1110③+51
-)+66-1500110011=[+51]補(bǔ)
+)10111110=[-66]補(bǔ)11110001=[-15]補(bǔ)④-51
-)-66+1511001101=[-51]補(bǔ)
+)01000010=[+66]補(bǔ)
100001111=[+15]補(bǔ)無(wú)論被減數(shù)、減數(shù)是正數(shù)還是負(fù)數(shù),上述補(bǔ)碼減法的規(guī)則是正確的。在計(jì)算機(jī)中,利用這個(gè)規(guī)則,通過(guò)對(duì)減數(shù)進(jìn)行求補(bǔ)運(yùn)算而將減法變成加法。例①和④中由最高位向更高位的進(jìn)位同樣會(huì)自動(dòng)消失而不影響運(yùn)算結(jié)果的正確性。公式成立前提條件:運(yùn)算結(jié)果不能超出機(jī)器數(shù)所能表示的范圍,否則運(yùn)算結(jié)果不正確。設(shè)機(jī)器字長(zhǎng)為8位,則-128≤N≤+127。計(jì)算(+64)+(+65)。結(jié)果是錯(cuò)誤的。究其原因是:(+64)+(+65)=+129>+127,超出了字長(zhǎng)為8位所能表示的最大值,產(chǎn)生了“溢出”,所以結(jié)果值出錯(cuò)。[X+Y]補(bǔ)
=[X]補(bǔ)
+[Y]補(bǔ)[X-Y]補(bǔ)
=[X]補(bǔ)
+[-Y]補(bǔ)(+64)+(+65)+(129)01000000+)0100000110000001→-127、計(jì)算(-125)+(-10)。
-125 10000011+)-10
+) 11110110-135 101111001→+121計(jì)算結(jié)果錯(cuò)誤,其原因是:(-125)+(-10)=-135<-128,超出了字長(zhǎng)為8位所能表示的最小值,產(chǎn)生了“溢出”,所以結(jié)果出錯(cuò)。在補(bǔ)碼運(yùn)算時(shí),要注意溢出問(wèn)題,它與進(jìn)位不同。溢出就是運(yùn)算的結(jié)果超出了所能表示的范圍,使得數(shù)據(jù)侵占了符號(hào)位,判斷溢出的方法有如下兩種:①雙進(jìn)位法:2個(gè)進(jìn)位位分別為次高位向最高位的進(jìn)位和最高位向進(jìn)位位的進(jìn)位。如果兩個(gè)進(jìn)位均有或均無(wú)則無(wú)溢出,如果兩個(gè)進(jìn)位中1個(gè)有進(jìn)位而另一個(gè)無(wú)進(jìn)位則一定有溢出。②符號(hào)判斷法:同號(hào)相減無(wú)溢出,同號(hào)相加時(shí)結(jié)果符號(hào)與加數(shù)符號(hào)相反有溢出,相同則無(wú)溢出。異號(hào)相加無(wú)溢出,異號(hào)相減時(shí)結(jié)果符號(hào)與減數(shù)符號(hào)相同時(shí)有溢出,相反則無(wú)溢出。
-125 10000011+)-10
+) 11110110-135 101111001→+121把數(shù)的8位表示擴(kuò)大為16位表示:1111111110000011+)11111111
111101101000000010000110+)11000000010000111=-135結(jié)果正確溢出的解決辦法:擴(kuò)大數(shù)據(jù)位數(shù):結(jié)果錯(cuò)誤采用補(bǔ)碼運(yùn)算后,運(yùn)算結(jié)果也是補(bǔ)碼,欲得運(yùn)算結(jié)果的真值,還需進(jìn)行轉(zhuǎn)換。
1
1111111101111001驗(yàn)證計(jì)算機(jī)中的帶符號(hào)數(shù)用補(bǔ)碼表示的優(yōu)點(diǎn):(1)負(fù)數(shù)的補(bǔ)碼與對(duì)應(yīng)正數(shù)的補(bǔ)碼之間的轉(zhuǎn)換可以用同一方法——求補(bǔ)運(yùn)算實(shí)現(xiàn),因而可簡(jiǎn)化硬件。(2)可以將減法變?yōu)榧臃ㄟ\(yùn)算,從而省去了減法器。(3)無(wú)符號(hào)數(shù)及帶符號(hào)數(shù)的加法運(yùn)算可用同一電路完成,結(jié)果都是正確的。例如,計(jì)算機(jī)中有兩個(gè)數(shù)分別為11110001及00001100,無(wú)論它們代表無(wú)符號(hào)數(shù)還是帶符號(hào)數(shù),運(yùn)算結(jié)果都是正確的。11110011+)0000110011111101看作無(wú)符號(hào)數(shù)看作有符號(hào)數(shù)
241+12253[-15]補(bǔ)+[+12]補(bǔ)[-3]補(bǔ)1.1.3二進(jìn)制編碼
BCD編碼的特點(diǎn)是:這4個(gè)二進(jìn)制碼之間滿足二進(jìn)制規(guī)則,而十進(jìn)制數(shù)位之間是十進(jìn)制計(jì)數(shù)規(guī)則。因此這種編碼實(shí)質(zhì)上是二進(jìn)制編碼的十進(jìn)制數(shù)(BinaryCodedDecimal),因此簡(jiǎn)稱BCD碼或二—十進(jìn)制碼。表1-3BCD碼表十進(jìn)制數(shù)碼01234567898421碼00000001001000110100010101100111100010011.二進(jìn)制編碼的十進(jìn)制數(shù)(BCD碼)(1)壓縮BCD碼壓縮BCD碼的每1位十進(jìn)制數(shù)用4位二進(jìn)制編碼,1個(gè)字節(jié)表示2位十進(jìn)制數(shù)例如:96D=10010110BCD(2)非壓縮BCD碼非壓縮BCD碼用1個(gè)字節(jié)表示1位十進(jìn)制數(shù),高4位總是0,低4位表示數(shù)值(0~9)例如:8D=00001000BCD表1.2BCD碼表十進(jìn)制數(shù)壓縮BCD非壓縮BCD000000000000000001000000010000000120000001000000010….…………900001001000010011000010000000000010000000011000100010000000100000001…..…..…..
【例1】將十進(jìn)制數(shù)67.9轉(zhuǎn)換成壓縮BCD碼。其過(guò)程如下:
67.901100111.1001所以:(67.9)10=(01100111.1001)BCD
【例2】將BCD碼10010110.0110轉(zhuǎn)換成十進(jìn)制數(shù)
10010110.01109 6. 6所以:(10010110.0110)BCD=(96.6)102、字母和字符的編碼計(jì)算機(jī)處理的信息除了數(shù)字之外還需要處理字母、符號(hào)等,例如鍵盤輸入及打印機(jī)、CRT輸出的信息大部分是字符。計(jì)算機(jī)中的字符也必須采用二進(jìn)制編碼的形式。編碼有多種,微型計(jì)算機(jī)中普遍采用的是ASCII(AmericanStandardCodeforInformationInterchange)碼,即美國(guó)標(biāo)準(zhǔn)信息交換代碼。ASCII碼用8位二進(jìn)制對(duì)字符進(jìn)行編碼。表1-4ASCII字符編碼B6B5B4
B3B2B1B0000(0)001(1)010(2)011(3)100(4)101(5)110(6)111(7)0000
(0)NULDLESP0@P`p0001
(1)SOHDC1!1AQaq0010
(2)STXDC2″2BRbr0011
(3)ETXDC3#3CScs0100
(4)EOTDC4$4DTdt0101
(5)ENQNAK%5EUeu0110
(6)ACKSYN&6FVfv0111
(7)BELETB?7GWgw1000
(8)BSCAN(8HXhx1001
(9)HTEM)9IYiy1010
(A)LFSUB*:JZjz1011
(B)VTESC+;K[k{1100
(C)FFFS,<L\l|1101
(D)CRGS-=M]m}1110
(E)SORS.>N^n~1111
(F)SIUS/?O_oDELNUL空SOH標(biāo)題開始STX正文結(jié)束ETX本文結(jié)束EOT傳輸結(jié)束ENQ詢問(wèn)ACK承認(rèn)BEL報(bào)警符BS退格HT橫向列表LF換行VT垂直制表FF走紙控制CR回車SO移位輸出SI移位輸入SP空格DLE數(shù)據(jù)鏈換碼DC1設(shè)備控制1DC2設(shè)備控制2DC3設(shè)備控制3DC4設(shè)備控制4NAK否定SYN空轉(zhuǎn)同步ETB信息組傳送結(jié)束CAN作廢EM紙盡SUB減ESC換碼FS分隔符GS組分隔符RS記錄分隔符US單元分隔符DEL作廢
ASCII碼表有以下幾個(gè)特點(diǎn):
(1)
每個(gè)字符用7位二進(jìn)制碼表示,其排列次序?yàn)椋?/p>
B6
B5
B4
B3
B2B1
B0。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年湖南都市職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)及參考答案詳解
- 2026年承德護(hù)理職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性考試題庫(kù)及參考答案詳解1套
- 2026年天津藝術(shù)職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)參考答案詳解
- 醫(yī)院中醫(yī)學(xué)編制面試題及答案
- 應(yīng)聘護(hù)士面試題目及答案
- 2025年四川大學(xué)高分子科學(xué)與工程學(xué)院管理崗崗位招聘?jìng)淇碱}庫(kù)及參考答案詳解
- 2025年中國(guó)光大銀行光大理財(cái)社會(huì)招聘?jìng)淇碱}庫(kù)及完整答案詳解一套
- 2025年重慶大學(xué)實(shí)驗(yàn)室及設(shè)備管理處勞務(wù)派遣工作人員招聘?jìng)淇碱}庫(kù)及完整答案詳解一套
- 2025年湖南省社會(huì)主義學(xué)院公開招聘高層次人才備考題庫(kù)帶答案詳解
- 滄州醫(yī)學(xué)高等專科學(xué)校2026年度高層次人才選聘的備考題庫(kù)及參考答案詳解一套
- 《脊髓栓系綜合征》課件
- 【MOOC】《線性代數(shù)與空間解析幾何(二)》電子科技大學(xué)-中國(guó)大學(xué)慕課MOOC答案
- 大數(shù)據(jù)與城市規(guī)劃習(xí)題及答案
- 北京市石景山區(qū)2020-2021學(xué)年三年級(jí)下學(xué)期期末考試語(yǔ)文試卷
- 2016大型年會(huì)晚會(huì)籌備工作分工推進(jìn)計(jì)劃表(專業(yè)詳細(xì)完整版)
- 商業(yè)合作計(jì)劃書怎么寫
- 《MATLAB編程及應(yīng)用》全套教學(xué)課件
- GA 2113-2023警服女禮服
- 坐標(biāo)正算講解
- 銀行開門紅表態(tài)發(fā)言三分鐘范文三篇
- 國(guó)開機(jī)考答案-鋼結(jié)構(gòu)(本)(閉卷)
評(píng)論
0/150
提交評(píng)論