二進(jìn)制與機(jī)器碼_第1頁
二進(jìn)制與機(jī)器碼_第2頁
二進(jìn)制與機(jī)器碼_第3頁
二進(jìn)制與機(jī)器碼_第4頁
二進(jìn)制與機(jī)器碼_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

二進(jìn)制與十進(jìn)制、八進(jìn)制和十六進(jìn)制的轉(zhuǎn)換數(shù)的表示(定點(diǎn)小數(shù)、定點(diǎn)整數(shù)、浮點(diǎn)數(shù))

機(jī)器碼(原碼、反碼、補(bǔ)碼)

定點(diǎn)數(shù)的運(yùn)算1數(shù)制數(shù)字的總個(gè)數(shù)等于基數(shù)最大的數(shù)字比基數(shù)小1每個(gè)數(shù)字都要乘以基數(shù)的冪次,該冪次由每個(gè)數(shù)字所在的位置決定。2二進(jìn)制

二進(jìn)制:逢二進(jìn)位的數(shù)制系統(tǒng)

基數(shù):01例:(110)21×22+1×21+0×20=(6)10奇偶數(shù)的判斷以尾數(shù)為準(zhǔn)

易于運(yùn)算

用于表達(dá)二進(jìn)制數(shù)所需的物理狀態(tài)最少例:0~999范圍內(nèi)的數(shù),十進(jìn)制表示需3×10=30個(gè)穩(wěn)定狀態(tài);二進(jìn)制表示需10×2=20個(gè)穩(wěn)定狀態(tài)(210=1024)3二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)

整數(shù)部分:

(knkn-1…k2k1)2=(kn×2n-1+kn-1×2n-2+…+k2×21+k1)10

小數(shù)部分:

(.k1k2…kn-1kn)2=(k1×2-1+k2×2-2+…+kn-1×2-(n-1)+kn×

2-n)10例:(11001)224+23+1=(25)10(0.101)22-1+2-3=(0.625)10(101.11)222+1+2-1+2-2=(5.75)104十進(jìn)制整數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)

轉(zhuǎn)換規(guī)則:除2取余(除基取余,先余為低,后余為高)(x)10=(knkn-1…k2k1)2=(kn×2n-1+kn-1×2n-2+…+k2×21+k1)10k1=x除2取余數(shù),逐次除2……直至商數(shù)小于2(27)10=(11011)2例:(20)10=(67)10=(128)10=(10100)2(1000011)2(10000000)25十進(jìn)制小數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)

轉(zhuǎn)換規(guī)則:乘2取進(jìn)位(乘基取整,先整為高,后整為低)(x)10=(.k1k2…kn-1kn)2=(k1×2-1+k2×2-2+…+kn-1×2n-1+kn×

2-n)10k1=x乘2取進(jìn)位,十進(jìn)制小數(shù)逐次乘2,……直至余數(shù)為0例:(0.125)10=(0.001)20.125×2=0.25進(jìn)位為00.25×2=0.5進(jìn)位為00.5×2=1進(jìn)位為1,余數(shù)為0,計(jì)算結(jié)束練習(xí):(0.625)10=(0.101)2(23.25)10=(10111.01)267二進(jìn)制數(shù)

與八進(jìn)制、十六進(jìn)制數(shù)的轉(zhuǎn)換

三位二進(jìn)制數(shù)對應(yīng)一位八進(jìn)制數(shù)(基數(shù):0~7)

四位二進(jìn)制數(shù)對應(yīng)一位十六進(jìn)制數(shù)(基數(shù):0~9,A~F)例:(110.111)2=(6.7)8=(6.E)16(11010.01)2=(32.2)8=(1A.4)1689數(shù)的機(jī)內(nèi)表示—定點(diǎn)小數(shù)

定點(diǎn)小數(shù):數(shù)符數(shù)值

數(shù)符:0——正,1——負(fù)例:+0.00110100011010-0.101011010000若機(jī)器字長為n,則定點(diǎn)小數(shù)的數(shù)值表示范圍為:

2-(n-1)<=|x|<=1-2-(n-1)小數(shù)點(diǎn)

有關(guān)機(jī)器碼及其運(yùn)算的介紹均以定點(diǎn)小數(shù)為例10數(shù)的機(jī)內(nèi)表示—定點(diǎn)整數(shù)

無符號整數(shù):數(shù)值位

字長為n時(shí),無符號整數(shù)的表達(dá)范圍為0~2n-1

有符號整數(shù):數(shù)符數(shù)值

字長為n時(shí),有符號整數(shù)的表達(dá)范圍為|x|<=2n-1-111數(shù)的機(jī)內(nèi)表示—浮點(diǎn)數(shù)

浮點(diǎn)數(shù):

階符階碼數(shù)符尾數(shù)將數(shù)x表示為s×2j的形式,其中s為x的小數(shù)形式(尾數(shù))例:-110.11=-0.11011×211011111011階碼確定數(shù)的表示范圍尾數(shù)確定數(shù)的精度。12機(jī)器碼—原碼

數(shù)學(xué)定義:

[x]原=x1>x>=01-x或1+|x|0>x>-1

物理意義:將x表示為定點(diǎn)小數(shù)例:x=+0.0011011[x]原=00011011x=-0.0100011[x]原=10100011說明:以定點(diǎn)小數(shù)的機(jī)器碼為例原碼表示形式簡單,適合于乘除運(yùn)算,但加減復(fù)雜13機(jī)器碼—反碼

數(shù)學(xué)定義:

[x]反=x1>x>=02-2-(n-1)+x0>x>-1

物理意義:正數(shù)反碼等于原碼,負(fù)數(shù)反碼等于原碼各數(shù)碼位取反例:x=+0.0011011[x]原=00011011[x]反=00011011x=-0.0100011[x]原=10100011[x]反=1101110014負(fù)數(shù)區(qū)域正數(shù)區(qū)域1267891011機(jī)器碼—補(bǔ)碼15紅色區(qū)域的負(fù)數(shù)是-1(11)、-2(10)、-3(9)、-4(8)、-5(7),他們分別是用鐘表的模12分別減去1,2,3,4,5,也就是說,用表面上是正數(shù)的7、8、9、10、11來代表-5、-4、-3、-2、-1, 機(jī)器碼—補(bǔ)碼16機(jī)器碼補(bǔ)充解釋-3+9

取模運(yùn)算:整除模數(shù)后取余數(shù)例:45mod12=93mod12=35mod3=2

模:一個(gè)計(jì)算系統(tǒng)的最大容量

定點(diǎn)小數(shù)機(jī)器碼以2為模17機(jī)器碼—補(bǔ)碼

數(shù)學(xué)定義:

[x]補(bǔ)=x1>x>=02+x或2-|x|或[x]反+2-(n-1)0>x>-1

物理意義:正數(shù)補(bǔ)碼等于原碼,負(fù)數(shù)補(bǔ)碼等于反碼最低位加1例:x=+0.0011011[x]原=00011011[x]反=00011011[x]補(bǔ)=00011011

x=-0.0100011[x]原=10100011[x]反=11011100[x]補(bǔ)=1101110118定點(diǎn)數(shù)加(減)法

定點(diǎn)補(bǔ)碼加(減)法:

[x]補(bǔ)+[y]補(bǔ)=[x+y]補(bǔ),|x|<1,|y|<1,|x+y|<1

例:00100000———(+0.01)2=(+0.25)10+11110000———(-0.001)2=(-0.125)10———————100010000———(+0.001)2=(+0.125)10192.補(bǔ)碼減法補(bǔ)碼減法的運(yùn)算規(guī)則為:20

例2.12

已知 [+51]補(bǔ)=00110011B,[+66]補(bǔ)=01000010B [?51]補(bǔ)=11001101B,[?66]補(bǔ)=10111110B求[+66]補(bǔ)?[+51]補(bǔ)=?[-66]補(bǔ)--[-51]補(bǔ)=?解 [+66]補(bǔ)-[+51]補(bǔ)=[+66]補(bǔ)+[-51]補(bǔ) [-66]補(bǔ)-[-51]補(bǔ)=[-66]補(bǔ)+[+51]補(bǔ)

21

二進(jìn)制(補(bǔ)碼)加法十進(jìn)制加法10111110[-66]補(bǔ)-66+)00110011[+51]補(bǔ)-)-5111110001[-15]補(bǔ)-15

二進(jìn)制(補(bǔ)碼)加法十進(jìn)制加法01000010[+66]補(bǔ)+66+)11001101[-51]補(bǔ)-)+5100001111[+15]補(bǔ)+151自動(dòng)丟失對比結(jié)果是否正確對比結(jié)果是否正確22可以看出,無論被減數(shù)、減數(shù)是正數(shù)還是負(fù)數(shù),上述補(bǔ)碼減法的規(guī)則都是正確的。同樣,由最高位向更高位的進(jìn)位會(huì)自動(dòng)丟失而不影響運(yùn)算結(jié)果的正確性。計(jì)算機(jī)中帶符號數(shù)用補(bǔ)碼表示時(shí)有如下優(yōu)點(diǎn):

①可以將減法運(yùn)算變?yōu)榧臃ㄟ\(yùn)算,因此可使用同一個(gè)運(yùn)算器實(shí)現(xiàn)加法和減法運(yùn)算,簡化了電路。23

②無符號數(shù)和帶符號數(shù)的加法運(yùn)算可以用同一個(gè)加法器實(shí)現(xiàn),結(jié)果都是正確的。例如:

無符號數(shù)帶符號數(shù)11100001 225 [-31]補(bǔ)+)00001101+) 13 +)[+13]補(bǔ)11101110 238[-18]補(bǔ)若兩操作數(shù)為無符號數(shù)時(shí),計(jì)算結(jié)果為無符號數(shù)11101110B,其真值為238,結(jié)果正確;若兩操作數(shù)為補(bǔ)碼形式,計(jì)算結(jié)果也為補(bǔ)碼形式,11101110B為–18的補(bǔ)碼,結(jié)果也是正確的。24引入補(bǔ)碼后,減法運(yùn)算用加法來實(shí)現(xiàn),且數(shù)的符號位也可以當(dāng)作數(shù)值一樣參與運(yùn)算。25定點(diǎn)數(shù)加(減)法

機(jī)器數(shù)的表達(dá)范圍有限,兩數(shù)之和超出表示范圍時(shí),產(chǎn)生溢出(overflow)例:01100101+01000011———————10101000正數(shù)相加,結(jié)果為負(fù)數(shù)26定點(diǎn)乘法

符號位:兩數(shù)相乘.符號位相加。0+0=0,1+0=0+1=1,1+1=10

數(shù)值部分:原碼相乘0.101×0.011————101101+000————0.0011110.000累加器初值為0+0.101乘數(shù)末位為1,加被乘數(shù)———0.101部分積0.0101部分積右移一位+0.101乘數(shù)倒數(shù)第二位為1,加被乘數(shù)———0.111第二次部分積0.01111第二次部分積右移一位+0.000乘數(shù)最高位為0,加0———0.011第三次部分積0.001111第三次部分積右移一位,得結(jié)果27定點(diǎn)除法(1)

符號位:兩數(shù)相除.符號位相加。0+0=0,1+0=0+1=1,1+1=10

數(shù)值部分:補(bǔ)碼相除(|除數(shù)|>|被除數(shù)|)28定點(diǎn)除法(2)—恢復(fù)余數(shù)法29定點(diǎn)除法(3)—加減交替法30信息的編碼二進(jìn)制編碼的十進(jìn)制數(shù)(BCD編碼)雖然二進(jìn)制數(shù)對計(jì)算機(jī)來說是最佳的數(shù)制,但是人們卻不習(xí)慣使用它。為了解決這一矛盾,人們提出了一個(gè)比較適合于十進(jìn)制系統(tǒng)的二進(jìn)制編碼的特殊形式,即將1位十進(jìn)制的09這10個(gè)數(shù)字分別用4位二進(jìn)制碼的組合來表示,在此基礎(chǔ)上可按位對任意十進(jìn)制數(shù)進(jìn)行編碼。這就是二進(jìn)制編碼的十進(jìn)制數(shù),簡稱BCD碼(Binary-CodedDecimal)。314位二進(jìn)制數(shù)碼有16種組合(00001111),原則上可任選其中的10個(gè)來分別代表十進(jìn)制中09這10個(gè)數(shù)字。但為了便于記憶,最常用的是8421BCD碼,這種編碼從00001111這16種組合中選擇前10個(gè)即00001001來分別代表十進(jìn)制數(shù)碼09,8、4、2、1分別是這種編碼從高位到低位每位的權(quán)值。BCD碼有兩種形式,即壓縮型BCD碼和非壓縮型BCD碼。321.壓縮型BCD碼壓縮型BCD碼用一個(gè)字節(jié)表示兩位十進(jìn)制數(shù)。例如,10000110B表示十進(jìn)制數(shù)86。2.非壓縮型BCD碼非壓縮型BCD碼用一個(gè)字節(jié)表示一位十進(jìn)制數(shù)。高4位總是0000,低4位用00001001中的一種組合來表示09中的某一個(gè)十進(jìn)制數(shù)。33表2.28421BCD碼部分編碼表十進(jìn)制數(shù)壓縮型BCD碼非壓縮型BCD碼12391011192021

00000001000000000000000100000001

00000001000010010000001000000000000000100000000134需要說明的是,雖然BCD碼可以簡化人機(jī)聯(lián)系,但它比純二進(jìn)制編碼效率低,對同一個(gè)給定的十進(jìn)制數(shù),用BCD碼表示時(shí)需要的位數(shù)比用純二進(jìn)制碼多,而且用BCD碼進(jìn)行運(yùn)算所花的時(shí)間也要更多,計(jì)算過程更復(fù)雜,因?yàn)锽CD碼是將每個(gè)十進(jìn)制數(shù)用一組4位二進(jìn)制數(shù)來表示,若將這種BCD碼送計(jì)算機(jī)進(jìn)行運(yùn)算,由于計(jì)算機(jī)總是將數(shù)當(dāng)作二進(jìn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論