計(jì)算機(jī)組成原理2-1_第1頁
計(jì)算機(jī)組成原理2-1_第2頁
計(jì)算機(jī)組成原理2-1_第3頁
計(jì)算機(jī)組成原理2-1_第4頁
計(jì)算機(jī)組成原理2-1_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第二章運(yùn)算方法和運(yùn)算器汪志華edgar_wang@2.1數(shù)據(jù)與文字的表示方法進(jìn)制的相互轉(zhuǎn)換(要求非常熟練)真值機(jī)器數(shù)2.1.1數(shù)據(jù)格式定點(diǎn)數(shù):操作數(shù)數(shù)據(jù)格式中小數(shù)點(diǎn)是固定的,通常將數(shù)據(jù)表示成純小數(shù)或純整數(shù)定點(diǎn)數(shù)x=x0x1x2…xn

在定點(diǎn)機(jī)中表示如下(x0表示符號(hào)位)x0x1x2...xn-1xnx0x1x2...xn-1xn定點(diǎn)小數(shù)定點(diǎn)整數(shù)小數(shù)點(diǎn)小數(shù)點(diǎn)純小數(shù)的表示范圍為0≤|x|≤1-2-n例如,n=8,最大值編碼:0.11111111 表示:0.11111111=1.0-0.00000001

=1-2-8純整數(shù)的表示范圍為0≤|x|≤2n

-1例如:n=8,最大值編碼:11111111 表示:11111111=100000000-1

=28-1如何用定點(diǎn)數(shù)來表示非常大(e.g.2×10+33)的數(shù)和非常小(e.g.9×10-28)的數(shù)?浮點(diǎn)表示法:把一個(gè)數(shù)的有效數(shù)字和數(shù)的范圍在計(jì)算機(jī)的一個(gè)存儲(chǔ)單元中分別予以表示,這種把數(shù)的范圍和精度分別表示的方法,數(shù)的小數(shù)點(diǎn)位置隨比例因子的不同而在一定范圍內(nèi)自由浮動(dòng)。一個(gè)任意進(jìn)制數(shù)N可以寫成

N=Re?M

M:尾數(shù),是一個(gè)純小數(shù)。e:比例因子的指數(shù),稱為浮點(diǎn)數(shù)的指數(shù),是一個(gè)整數(shù)。R:比例因子的基數(shù),對于二進(jìn)計(jì)數(shù)值的機(jī)器是一個(gè)常數(shù),一般規(guī)定R為2,8或16。階碼表達(dá)指數(shù)部分用整數(shù)形式表示,指明小數(shù)點(diǎn)在數(shù)據(jù)中的位置決定浮點(diǎn)數(shù)的表示范圍尾數(shù)用定點(diǎn)小數(shù)表示,給出有效數(shù)字的位數(shù)決定了浮點(diǎn)數(shù)的表示精度階符階碼數(shù)符尾數(shù)早期計(jì)算機(jī)中浮點(diǎn)數(shù)的表示階符階碼數(shù)符尾數(shù)現(xiàn)行浮點(diǎn)數(shù)的表示IEEE754標(biāo)準(zhǔn)S:浮點(diǎn)數(shù)的符號(hào)位,1位,0表示正數(shù),1表示負(fù)數(shù)。M:尾數(shù),23位,用小數(shù)表示,小數(shù)點(diǎn)放在尾數(shù)域的最前面。E:階碼,8位階符采用隱含方式,即采用移碼方式來表示正負(fù)指數(shù)。將浮點(diǎn)數(shù)的指數(shù)真值e

變成階碼E

時(shí),應(yīng)將指數(shù)e加上一個(gè)固定的偏移值127(01111111),即E=e+127SEM32位浮點(diǎn)數(shù)313023220對于二進(jìn)制數(shù)1011.1101 =0.10111101×2+4

=0.01011101×2+5 =10.111101×2+2 =1.0111101×2+3為提高數(shù)據(jù)的表示精度,當(dāng)尾數(shù)的值不為0時(shí),尾數(shù)域的最高有效位應(yīng)為1,否則以修改階碼同時(shí)左右移小數(shù)點(diǎn)的辦法,使其變成這一表示形式,這稱為浮點(diǎn)數(shù)的規(guī)格化表示。尾數(shù)的最高位為非零數(shù)值的浮點(diǎn)數(shù),即:對于原碼表示,xf.x1x2...xn則x1=1對于補(bǔ)碼表示,xf.x1x2...xn則xf⊕

x1=1IEEE754規(guī)格化的浮點(diǎn)數(shù)尾數(shù)最高有效位為1,并且隱藏在小數(shù)點(diǎn)的左邊(即:1≤M<2)IEEE754標(biāo)準(zhǔn)中,一個(gè)規(guī)格化的32位浮點(diǎn)數(shù)x的真值可表示為

x=(-1)s×(1.M)×2E-127e=E-127

IEEE754標(biāo)準(zhǔn)中,一個(gè)規(guī)格化的64位雙精度浮點(diǎn)數(shù)規(guī)格化表示 x=(-1)s

×(1.M)×2E-1023 e=E-1023(E=e+1023)SEM64位浮點(diǎn)數(shù)636252510④X=(-1)s×1.M×2e

=+(1.011011)×23 =+1011.011=(11.375)10②指數(shù)e=階碼-127=10000010-01111111 =00000011=(3)10③包括隱藏位1的尾數(shù)1.M=1.011011例1:浮點(diǎn)機(jī)器數(shù)(41360000)16,求真值①十六進(jìn)制數(shù)展開成二進(jìn)制數(shù)01000001001101100000000000000000S階碼E(8位)尾數(shù)M(23位)例2:真值20.59375,求32位單精度浮點(diǎn)數(shù)①分別將整數(shù)和分?jǐn)?shù)部分轉(zhuǎn)換成二進(jìn)制數(shù)20.59375=10100.10011②移動(dòng)小數(shù)點(diǎn),使其在第1、2位之間10100.10011=1.010010011×24e=4S=0E=4+127=131=10000011M=010010011③得到32位浮點(diǎn)數(shù)的二進(jìn)制存儲(chǔ)格式為:0

1000001101001001100000000000000=(41A4C000)16IEEE754標(biāo)準(zhǔn)32位單精度規(guī)格化浮點(diǎn)數(shù)E=1(00000001)~254(11111110)e=-126~+127表達(dá)的數(shù)據(jù)范圍(絕對值):最小值:e=-126,M=0(1.M=1)

十進(jìn)制表達(dá):2-126≈1.18×10-38最大值:e=127,M=11…1(23個(gè)1)

1.M=1.11…1(23個(gè)1)=2-2-23

十進(jìn)制表達(dá):(2-2-23)×2127 ≈2×2127≈3.40×1038IEEE754標(biāo)準(zhǔn)64位雙精度規(guī)格化浮點(diǎn)數(shù)E=1~2046e=-1022~+1023表達(dá)的數(shù)據(jù)范圍(絕對值):

最小值:e=-1022,M=0(1.M=1)

十進(jìn)制表達(dá):2-1022≈2.23×10-308最大值:e=1023,M=11…1(52個(gè)1) 1.M=1.11…1(52個(gè)1)=2-2-52

十進(jìn)制表達(dá):(2-2-52)×21023 ≈2×21023≈1.79×10308IEEE754標(biāo)準(zhǔn)32位單精度規(guī)格化浮點(diǎn)數(shù)中一些規(guī)定真值0的機(jī)器數(shù)(機(jī)器零)階碼E=0,尾數(shù)M=0正0:S=0,負(fù)0:S=1非規(guī)格化浮點(diǎn)數(shù):階碼E=0,尾數(shù)M≠0規(guī)格化浮點(diǎn)數(shù):階碼E=1~254(11111110)無窮大的機(jī)器數(shù)階碼E=全1(11111111),尾數(shù)M=0+∞:S=0,-∞:S=1NaN(notanumber,不是一個(gè)數(shù))階碼E=全1(11111111),尾數(shù)M≠0用來通知異常情況十進(jìn)制數(shù)串的表示方法字符串形式:一個(gè)字節(jié)存放一個(gè)十進(jìn)制的數(shù)位或符號(hào)位。壓縮的十進(jìn)制數(shù)串形式:一個(gè)字節(jié)存放兩個(gè)十進(jìn)制的數(shù)位,符號(hào)位占半個(gè)字節(jié)(例如用C表示正,D表示負(fù))123

C012D+123-12

2.1.2數(shù)的機(jī)器碼表示原碼補(bǔ)碼反碼移碼原碼表示法定點(diǎn)小數(shù)的原碼形式為x0.x1x2…xn定點(diǎn)整數(shù)的原碼形式為x0x1x2…xn

X

1>X≥0

[X]原= 1-X=1+|X|0≥X>-1

X2n>X≥0

[X]原= 2n-X=2n+|X|0≥X>-2n例如,x=+0.1001,則[x]原=0.1001x=-0.1001,則[x]原=1.1001對于0,原碼機(jī)器中往往有“+0”、“-0”之分,故有兩種形式:[+0]原=0.000...0[-0]原=1.000...0補(bǔ)碼表示法負(fù)數(shù)用補(bǔ)碼表示時(shí),可以把減法轉(zhuǎn)化為加法+4-8定點(diǎn)小數(shù)的補(bǔ)碼形式為x0.x1x2…xn定點(diǎn)整數(shù)的補(bǔ)碼形式為x0x1x2…xn

X

1>X≥0

[X]補(bǔ)= 2+X=2-|X|0≥X≥-1

X2n>X≥0

[X]補(bǔ)= 2n+1+X=2n+1-|X|0≥X≥-2n(mod2)(mod2n+1)例如:x=+0.1011,則[x]補(bǔ)=0.1011x=-0.1011,則[x]補(bǔ)=10+x=10.0000-0.1011=1.0101對于0,[+0]補(bǔ)=[-0]補(bǔ)=0.0000

注意,0的補(bǔ)碼表示只有一種形式。補(bǔ)碼與真值的關(guān)系若[x]補(bǔ)=xnxn-1xn-2...x1x0則反碼表示法定點(diǎn)小數(shù)的反碼形式為x0.x1x2…xn定點(diǎn)整數(shù)的反碼形式為x0x1x2…xn

X

1>X≥0

[X]反= (2-2-n)+X0≥X>-1

X2n>X≥0

[X]反= (2n+1-1)+X0≥X>-2n對于正數(shù)x=+0.x1x2…xn,則[x]反=0.x1x2…xn對于負(fù)數(shù)x=-0.x1x2…xn,則[x]反=1.x1x2…xn對于0,有[+0]反和[-0]反之分:[+0]反=0.00...0[-0]反=1.11...1對于負(fù)數(shù)[x]補(bǔ)=[x]反+2-n

若要一個(gè)負(fù)數(shù)變補(bǔ)碼,其方法是符號(hào)位置1,其余各位0變1,1變0,然后在最末位(2-n)上加1。

溫馨提示

  • 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)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論