第六講定點運算器及浮點數(shù)運算演示文稿_第1頁
第六講定點運算器及浮點數(shù)運算演示文稿_第2頁
第六講定點運算器及浮點數(shù)運算演示文稿_第3頁
第六講定點運算器及浮點數(shù)運算演示文稿_第4頁
第六講定點運算器及浮點數(shù)運算演示文稿_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第六講定點運算器及浮點數(shù)運算演示文稿現(xiàn)在是1頁\一共有62頁\編輯于星期四優(yōu)選第六講定點運算器及浮點數(shù)運算現(xiàn)在是2頁\一共有62頁\編輯于星期四S0S1S2S3X0Y0

參數(shù)S0,S1,S2,S3

分別控制輸入Ai

和Bi

,產(chǎn)生Y和X的函數(shù)。其中:Yi是受S0,S1控制的Ai和Bi的組合函數(shù);Xi是受S2

,S3控制的Ai和Bi組合函數(shù)。

函數(shù)關(guān)系如表所示。Xi=S2S3+S2S3(Ai+Bi)+S2S3(Ai+Bi)+S2S3Ai

Yi=S0S1Ai+S0S1AiBi+S0S1AiBi?

核心部分是由兩個半加器組成的全加器。?

由M控制第二級半加器選擇邏輯運算或算術(shù)運算(所需的低位進位Cn

)。一位ALU基本邏輯電路現(xiàn)在是3頁\一共有62頁\編輯于星期四S0S1

Yi

S2S3

Xi

0

0

0

1

1

0

1

1Ai

AiBi

AiBi

00

0

0

1

1

0

1

11

Ai+Bi

Ai+Bi

Ai

進一步化簡:Xi=S3AiBi+S2AiBiYi=Ai+S0Bi+S1BiAi+S0Bi+S1BiS3AiBi+S2AiBiXiYi==Yi

Fi=Y(jié)i⊕Xi⊕Cn+iCn+i+1=Y(jié)i+XiCn+i現(xiàn)在是4頁\一共有62頁\編輯于星期四綜上所述,ALU的一位邏輯表達式為:Xi=S3AiBi+S2AiBiYi=Ai+S0Bi+S1Bi

Fi=Y(jié)i⊕Xi⊕Cn+iCn+i+1=Y(jié)i+XiCn+i現(xiàn)在是5頁\一共有62頁\編輯于星期四4位之間采用先行進位(并行進位)公式。根據(jù)Cn+i+1=Y(jié)i+XiCn+i,每一位的進位公式可遞推如下:

?

第0位向第1位的進位公式為:

Cn+1=Y(jié)0+X0Cn

(其中Cn是向第0位(末位)的進位)

?

第1位向第2位的進位公式為:

Cn+2=Y(jié)1+X1Cn+1=Y(jié)1+Y0X1+X0X1Cn

?

第2位向第3位的進位公式為:

Cn+3=Y(jié)2+X2Cn+2=Y(jié)2+Y1X1+Y0X1X2+X0X1X2Cn?

第3位的進位輸出(即整個4位運算進位輸出)公式為:

Cn+4=Y3+X3Cn+3=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3Cn4位ALU的進位關(guān)系及邏輯電路現(xiàn)在是6頁\一共有62頁\編輯于星期四Cn+1=Y(jié)0+X0CnCn+2=Y(jié)1+X1Cn+1=Y(jié)1+Y0X1+X0X1Cn

Cn+3=Y(jié)2+X2Cn+2=Y(jié)2+Y1X1+Y0X1X2+X0X1X2CnCn+4=Y3+X3Cn+3=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3Cn

Cn+4是最后進位輸出。邏輯表達式表明,這是一個先行進位邏輯。換句話說,第0位的進位輸入Cn可以直接傳送到最高位上去,因而可以實現(xiàn)高速運算。下圖為用上述原始推導(dǎo)公式實現(xiàn)的4位算術(shù)/邏輯運算單元(ALU)

——74181ALU從進位關(guān)系上看現(xiàn)在是7頁\一共有62頁\編輯于星期四

正邏輯表示的74181現(xiàn)在是8頁\一共有62頁\編輯于星期四

第3位的進位輸出(即整個4位運算進位輸出)公式為:

Cn+4=Y3+X3Cn+3=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3Cn設(shè)G=Y(jié)3+Y2X3+Y1X2X3+Y0X1X2X3

P=X0X1X2X3

Cn+4=G+PCn

其中G稱為進位發(fā)生輸出,P稱為進位傳送輸出。在電路中多加這兩個進位輸出的目的,是為了便于實現(xiàn)多片(組)ALU之間的先行進位。P和G的含義現(xiàn)在是9頁\一共有62頁\編輯于星期四負邏輯表示的74181X0Y0X1Y1X2Y2X3Y3現(xiàn)在是10頁\一共有62頁\編輯于星期四

2.算術(shù)邏輯運算的實現(xiàn)上圖中控制端M用來控制ALU進行算術(shù)運算還是進行邏輯運算:M=0時:

M對進位信號沒有任何影響。此時Fi

不僅與本位的被操作數(shù)Yi和操作數(shù)Xi

有關(guān),而且與向本位的進位值Cn+i

有關(guān),因此M=0時,進行算術(shù)操作。

M=1時:

封鎖了各位的進位輸出,即Cn+i

=0,因此各位的運算結(jié)果Fi

僅與Yi

和Xi

有關(guān),故M=1時,進行邏輯操作?,F(xiàn)在是11頁\一共有62頁\編輯于星期四下圖為工作于負邏輯和正邏輯操作方式的74181ALU方框圖。兩種操作是等效的。?對正邏輯操作數(shù)來說:

算術(shù)運算稱高電平操作;邏輯運算稱正邏輯操作

(即高電平為“1”,低電平為“0”)。?對于負邏輯操作數(shù)來說:

正好相反。現(xiàn)在是12頁\一共有62頁\編輯于星期四AA+BA+B減1A加AB(A+B)加ABA減B減1AB減1A加ABA加B(A+B)加ABAB減1A加A*(A+B)加A(A+B)加AA減1AA+BAB邏輯0ABBABABA+BABBAB邏輯1A+BA+BA

A減1AB減1

AB減1

減1A加(A+B)AB加(A+B)A減B減1A+BA加(A+B)A加BAB加(A+B)A+BA加A*AB加AAB加AA

AAB

A+B

邏輯1

A+BB

ABA+B

ABAB

BA+B

邏輯0AB

ABALLLLLLLHLLHLLLHHLHLLLHLHLHHLLHHHHLLLHLLHHLHLHLHHHHLLHHLHHHHLHHHH算術(shù)運算M=LCn=H邏輯M=H算術(shù)運算M=LCn=L邏輯M=H正邏輯輸入與輸出負邏輯輸入與輸出工作方式選擇輸入S3S2S1S0

現(xiàn)在是13頁\一共有62頁\編輯于星期四(1)H=高電平,L=低電平;(2)*表示每一位均移到下一個更高位,即A*=2A。(3)

算術(shù)運算操作是用補碼表示法來表示的,其中:

“加”是指算術(shù)加,運算時要考慮進位;符號“+”是指“邏輯加”。(4)

減法是用補碼方法進行的,其中數(shù)的反碼是內(nèi)部產(chǎn)生的,而結(jié)果輸出“A減B減1”,因此做減法時需在最末位產(chǎn)生一個強迫進位(加1),以便產(chǎn)生“A減B”的結(jié)果。(5)

“A=B”輸出端可指示兩個數(shù)是否相等;現(xiàn)在是14頁\一共有62頁\編輯于星期四3.并行加法器的進位邏輯74181ALU為4位并行加法器,組成16位的并行加法器——怎么辦?

4片(組)74181連接——怎樣連?

?組與組之間串行連接

?組與組之間并行連接現(xiàn)在是15頁\一共有62頁\編輯于星期四組間串行進位C4=G0+P0C0C8=G1+P1C4C12=G2+P2C8C16=G3+P3C12進位關(guān)系Cn+1=Y(jié)0+X0CnCn+2=Y(jié)1+X1Cn+1=Y(jié)1+Y0X1+X0X1Cn

Cn+3=Y(jié)2+X2Cn+2=Y(jié)2+Y1X1+Y0X1X2+X0X1X2CnCn+4=Y3+X3Cn+3=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3Cn組內(nèi)組間X0Y0X1Y1X2Y2X3Y3X0Y0X1Y1X2Y2X3Y3C4C8C4C00011G=Y(jié)3+Y2X3+Y1X2X3+Y0X1X2X3

P=X0X1X2X3現(xiàn)在是16頁\一共有62頁\編輯于星期四(2)組間并行進位——兩級先行進位的ALU由串行進位關(guān)系C8=G1+P1C4=G1+P1(G0+P0C0)=G1+G0P1+P0P1C0得:C4=G0+P0C0C8=G1+P1C4C12=G2+P2C8C16=G3+P3C12C4=G0+P0C0C12=G2+P2C8=G2+P2(G1+G0P1+P0P1Cn)=G2+G1P2+G0P1P2+P0P1P2C0C16=G3+P3C12=G3+G2P3+G1P1P2+G0P1P2P3+P0P1P2P3C0

=G*+P*C0其中:P*=P0P1P2P3G*=G3+G2P3+G1P1P2+G0P1P2P3根據(jù)上述公式實現(xiàn)邏輯電路:現(xiàn)在是17頁\一共有62頁\編輯于星期四

X0Y0X1Y1X2Y2X3Y3

C12C8C4

X0Y0X1Y1X2Y2X3Y3

X0Y0X1Y1X2Y2X3Y3

0

X0Y0X1Y1X2Y2X3Y3

現(xiàn)在是18頁\一共有62頁\編輯于星期四4.先行進位部件(CLA)——7418274182是一個并行進位部件,其內(nèi)部結(jié)構(gòu)圖如下:其中G*稱為成組進位發(fā)生輸出,P*稱為成組進位傳送輸出。現(xiàn)在是19頁\一共有62頁\編輯于星期四Cn+x=G0+P0CnCn+y=G1+P1Cn+x=G1+G0P1+P0P1CnCn+z=G2+P2Cn+y=G2+G1P2+G0P1P2+P0P1P2CnCn+4=G3+P3Cn+z=G3+G2P3+G1P1P2+G0P1P2P3+P0P1P2P3Cn

=G*+P*Cn其中:P*=P0P1P2P3

G*=G3+G2P3+G1P1P2+G0P1P2P3先行進位部件74182CLA所提供的進位邏輯關(guān)系如下:現(xiàn)在是20頁\一共有62頁\編輯于星期四74181ALU設(shè)置了P和G兩個本組先行進位輸出端。如果將四片74181的P,G輸出端送入到74182先行進位部件(CLA),又可實現(xiàn)第二級的先行進位,即組與組之間的先行進位。例:16位字長ALU的構(gòu)成G*P*現(xiàn)在是21頁\一共有62頁\編輯于星期四?C3、C7、C11是由74182同時形成的;?其不同點是74182還提供大組間的進位函數(shù)G*

和大組傳遞條件P*,以便在位數(shù)更長時組成下一級先行進位鏈。由圖可知:現(xiàn)在是22頁\一共有62頁\編輯于星期四

用若干個74181ALU位片,與配套的74182先行進位部件CLA在一起,可構(gòu)成一個全字長的ALU。例:全字長的ALU的構(gòu)成用兩個16位全先行進位部件級聯(lián)組成的32位ALU邏輯方框圖。現(xiàn)在是23頁\一共有62頁\編輯于星期四十進制加法器

十進制加法器可由BCD碼(二-十進制碼)來設(shè)計,它可以在二進制加法器的基礎(chǔ)上加上適當(dāng)?shù)摹靶U边壿媮韺崿F(xiàn)。70111+6+0110131101

(=D)

+011010011(=13)30011+5+010181000(=8)X+Y+C<10不調(diào)整X+Y+C>10調(diào)整現(xiàn)在是24頁\一共有62頁\編輯于星期四故:

1.和為10~15時,加6校正;

2.和數(shù)有進位時,加6校正。和數(shù)(4位)有進位調(diào)整2800101000+9+000010013700110001(=31)

+0000011000110111(=37)現(xiàn)在是25頁\一共有62頁\編輯于星期四1.一位BCD碼行波式進位加法器一般結(jié)構(gòu):011101010111100110111101111現(xiàn)在是26頁\一共有62頁\編輯于星期四2.n位BCD碼行波式進位加法器一般結(jié)構(gòu):現(xiàn)在是27頁\一共有62頁\編輯于星期四浮點運算方法和浮點運算器浮點加、減法運算浮點乘、除法運算現(xiàn)在是28頁\一共有62頁\編輯于星期四

尾數(shù):用定點小數(shù)表示,給出有效數(shù)字的位數(shù),決定了浮點數(shù)的表示精度;階碼:用整數(shù)形式表示,指明小數(shù)點在數(shù)據(jù)中的位置,決定了浮點數(shù)的表示范圍。機器浮點數(shù)格式:

浮點數(shù)的表示方法階符階碼數(shù)符尾數(shù)EsE1E2……EmMsM1M2……Mn現(xiàn)在是29頁\一共有62頁\編輯于星期四IEEE標準:尾數(shù)用原碼;階碼用“移碼”;基為2。浮點數(shù)的標準格式

按照IEEE754的標準,32位浮點數(shù)和64位浮點數(shù)的標準格式為:313023220SEM32位SEM63625251064位?為便于軟件移植,使用IEEE標準現(xiàn)在是30頁\一共有62頁\編輯于星期四設(shè)有兩個浮點數(shù)x和y,它們分別為:

浮點加、減法運算

其中Ex和Ey分別為數(shù)x和y的階碼,

Mx和My為數(shù)x和y的尾數(shù)。兩浮點數(shù)進行加法和減法的運算規(guī)則是:

x±y=(Mx2Ex-Ey±My)2EyEx<=Ey

x=2Ex·Mxy=2Ey·My現(xiàn)在是31頁\一共有62頁\編輯于星期四完成浮點加減運算的操作過程大體分為四步:(1)0操作數(shù)的檢查;(2)比較階碼大小并完成對階;(3)尾數(shù)進行加或減運算;(4)結(jié)果規(guī)格化。(5)舍入處理。(6)溢出處理?,F(xiàn)在是32頁\一共有62頁\編輯于星期四

使二數(shù)階碼相同(即小數(shù)點位置對齊),這個過程叫作對階。

?

先求兩數(shù)階碼Ex和Ey之差,即△E=Ex-Ey

若△E=0,表示

Ex=Ey

若△E>0,Ex>Ey

若△E<0,Ex<Ey通過尾數(shù)的移動來改變Ex或Ey,使其相等.

?對階原則階碼小的數(shù)向階碼大的數(shù)對齊;小階的尾數(shù)右移,每右移一位,其階碼加1(右規(guī))。(2)對階(1)0操作數(shù)檢查

現(xiàn)在是33頁\一共有62頁\編輯于星期四例:x=201×0.1101,y=211×(-0.1010),求x+y=?解:為便于直觀了解,兩數(shù)均以補碼表示,階碼、尾數(shù)均采用雙符號位。

[x]補=0001,00.1101[y]補=0011,11.0110[△E]補=[Ex]補-[Ey]補=0001+1101=1110

△E=-2,表示Ex比Ey小2,

因此將x的尾數(shù)右移兩位.

右移一位,

得[x]補=0010,00.0110

再右移一位,

得[x]補=0011,00.0011

至此,△E=0,對階完畢.現(xiàn)在是34頁\一共有62頁\編輯于星期四

尾數(shù)求和方法與定點加減法運算完全一樣。對階完畢可得:[x]補=0011,00.0011[y]補=0011,11.0110

對尾數(shù)求和:00.0011+11.011011.1001即得:[x+y]補=0011,11.1001(3)尾數(shù)求和運算現(xiàn)在是35頁\一共有62頁\編輯于星期四(4)結(jié)果規(guī)格化

求和之后得到的數(shù)可能不是規(guī)格化了的數(shù),為了增加有效數(shù)字的位數(shù),提高運算精度,必須將求和的結(jié)果規(guī)格化.①規(guī)格化的定義:

(二進制)對正數(shù):S=00.1×××…×對負數(shù):S=11.0×××…×采用雙符號位的補碼:采用原碼:

正數(shù):S=0.1×××…×

負數(shù):S=1.1×××…×現(xiàn)在是36頁\一共有62頁\編輯于星期四

若不是規(guī)格化的數(shù),需要尾數(shù)向左移位,以實現(xiàn)規(guī)格化的過程,我們稱其為向左規(guī)格化。②向左規(guī)格化

前例中,0011,11.1001不是規(guī)格化數(shù),因而需要左規(guī),即左移一位,階碼減1,得:[x+y]補=0010,11.0010③向右規(guī)格化

浮點加減運算時,尾數(shù)求和的結(jié)果也可能得到:

01.×××…×或10.×××…×,

即兩符號位不等,即結(jié)果的絕對值大于1。向左破壞了規(guī)格化。此時,將尾數(shù)運算的結(jié)果右移一位,階碼加1,稱為向右規(guī)格化。現(xiàn)在是37頁\一共有62頁\編輯于星期四例:兩浮點數(shù)x=0.1101210,y=(0.1011)201,求x+y。解:[x]補=0010,00.1101[y]補=0001,00.1011

對階:

[△E]補=[Ex]補-[Ey]補=0010+1111=0001y向x對齊,將y的尾數(shù)右移一位,階碼加1。

[y]補=0010,00.0101

求和:

00.1101+00.010101.0010[x+y]補=0010,01.0010右歸:運算結(jié)果兩符號位不同,其絕對值大于1,右歸。

[x+y]補=0011,00.1001現(xiàn)在是38頁\一共有62頁\編輯于星期四

在對階或向右規(guī)格化時,尾數(shù)要向右移位,這樣,被右移的尾數(shù)的低位部分會被丟掉,從而造成一定誤差,因此要進行舍入處理。

?

簡單的舍入方法有兩種:①“0舍1入”法即如果右移時被丟掉數(shù)位的最高位為0則舍去,反之則將尾數(shù)的末位加“1”。②“恒置1”法即只要數(shù)位被移掉,就在尾數(shù)的末位恒置“1”。從概率上來說,丟掉的0和1各為1/2。(5)舍入處理

?IEEE754標準中,舍入處理提供了四種可選方法:現(xiàn)在是39頁\一共有62頁\編輯于星期四(6)溢出處理

與定點加減法一樣,浮點加減運算最后一步也需判溢出。在浮點規(guī)格化中已指出,當(dāng)尾數(shù)之和(差)出現(xiàn)01.××…×或10.××…×?xí)r,并不表示溢出,只有將此數(shù)右規(guī)后,再根據(jù)階碼來判斷浮點運算結(jié)果是否溢出。現(xiàn)在是40頁\一共有62頁\編輯于星期四

若機器數(shù)為補碼,尾數(shù)為規(guī)格化形式,并假設(shè)階符取2位,階碼取7位、數(shù)符取2位,尾數(shù)取n位,則它們能表示的補碼在數(shù)軸上的表示范圍如圖所示。正負現(xiàn)在是41頁\一共有62頁\編輯于星期四

圖中A,B,a,b分別對應(yīng)最小負數(shù)、最大正數(shù)、最大負數(shù)和最小正數(shù)。它們所對應(yīng)的真值分別是:

A最小負數(shù)2+127(-1)B最大正數(shù)2+127(1-2-n)a最大負數(shù)2-128(-2-1-2-n)b最小正數(shù)2-128

2-1正負現(xiàn)在是42頁\一共有62頁\編輯于星期四圖中a,b之間的陰影部分,對應(yīng)階碼小于128的情況,叫做浮點數(shù)的下溢。下溢時.浮點數(shù)值趨于零,故機器不做溢出處理,僅把它作為機器零。圖中的A、B兩側(cè)陰影部分,對應(yīng)階碼大于127的情況,叫做浮點數(shù)的上溢。此刻,浮點數(shù)真正溢出,機器需停止運算,作溢出中斷處理。一般說浮點溢出,均是指上溢。

可見,浮點機的溢出與否可由階碼的符號決定:

階碼[j]補=01,為上溢,機器停止運算,做中斷處理;階碼[j]補=10,為下溢,按機器零處理?,F(xiàn)在是43頁\一共有62頁\編輯于星期四例:若某次加法操作的結(jié)果為[X+Y]補=11.010,00.0000110111則應(yīng)對其進行向左規(guī)格化操作:尾數(shù)為:00.1101110000,階碼減4:

11.010+11.100[-4]補

10.110例:若某次加法操作的結(jié)果為[X+Y]補=00.111,10.1011100111則應(yīng)對其進行向右規(guī)格化操作:尾數(shù)為:11.0101110011,階碼加1:01.000

階碼超出了它所能表示的最大正數(shù)(+7),表明本次浮點運算產(chǎn)生了溢出。

階碼超出了它所能表示的最小負數(shù)(-8),表明本次浮點運算產(chǎn)生了溢出?,F(xiàn)在是44頁\一共有62頁\編輯于星期四

在加、減運算過程中要檢查是否產(chǎn)生了溢出:若階碼正常,加減運算正常結(jié)束;若階碼溢出,則要進行相應(yīng)的處理。階碼上溢——

超過了階碼可能表示的最大值的正指數(shù)值,一般將其認為是+∞和-∞。階碼下溢——

超過了階碼可能表示的最小值的負指數(shù)值,一般將其認為是0。?

浮點數(shù)的溢出是以其階碼溢出表現(xiàn)出來的?

對尾數(shù)的溢出也需要處理(上溢—右歸,下溢—舍入)。小結(jié):現(xiàn)在是45頁\一共有62頁\編輯于星期四現(xiàn)在是46頁\一共有62頁\編輯于星期四例

設(shè)x=20100.11011011,y=2100(-0.10101100),求x+y。解:階碼采用雙符號位,尾數(shù)采用單符號位,則它們的浮點表示分別為[x]浮=00010,

0.11011011

[y]浮=00100,

1.01010100(1)求階差并對階△E=Ex-

Ey=[Ex]補+[-Ey]補=00010+11100=11110[x]?。?0100,0.00110110(11)其中(11)表示Mx右移2位后移出的最低兩位數(shù)。即△E為-2,x的階碼小,應(yīng)使Mx右移兩位,Ex加2,現(xiàn)在是47頁\一共有62頁\編輯于星期四(2)尾數(shù)求和(4)舍入處理采用0舍1入法處理,則有:1.00010101+11.000101100.00110110(11)+1.01010100

1.10001010(11)(3)規(guī)格化處理尾數(shù)運算結(jié)果的符號位與最高數(shù)值位為同值,應(yīng)執(zhí)行左規(guī)處理,結(jié)果為1.00010101(10),階碼為00011。(5)判斷溢出階碼符號位為00,不溢出,故得最終結(jié)果為

x+y=2011×(-0.11101010)現(xiàn)在是48頁\一共有62頁\編輯于星期四例兩浮點數(shù)x=201×0.1101,y=211×(-0.1010)。假設(shè)尾數(shù)在計算機中以補碼表示,可存儲4位尾數(shù),2位保護位,階碼以原碼表示,求x+y。解:將x,y轉(zhuǎn)換成浮點數(shù)據(jù)格式

[x]浮

=0001,00.1101 [y]浮

=0011,11.0110步驟1:對階,階差為11-01=10,即2,因此將x的尾數(shù)右移兩位,得

[x]浮

=0011,00.001101步驟2:對尾數(shù)求和,得: [x+y]浮

=0011,11.100101步驟3:由于符號位和第一位數(shù)相等,不是規(guī)格化數(shù),向左規(guī)格化,得

[x+y]浮

=0010,11.001010步驟4:截去。

[x+y]浮

=0010,11.0010步驟5:數(shù)據(jù)無溢出,因此結(jié)果為

x+y=210×(-0.1110)現(xiàn)在是49頁\一共有62頁\編輯于星期四浮點運算電路浮點加法器原理框圖MESMES小ALU大ALU控制右移左移或右移舍入部件階碼差加1或減1MES111000現(xiàn)在是50頁\一共有62頁\編輯于星期四

浮點乘、除法運算1.浮點乘法、除法運算規(guī)則

設(shè)有兩個浮點數(shù)x和y:x=2Ex·Mx

y=2Ey·My浮點乘法運算的規(guī)則是:xy=2(Ex+Ey)·(Mx

My)

即:乘積的尾數(shù)是相乘兩數(shù)的尾數(shù)之積;

乘積的階碼是相乘兩數(shù)的階碼之和。浮點除法運算的規(guī)則是:

x÷y=2(Ex-Ey)·(Mx÷My)

即:商的尾數(shù)是相除兩數(shù)的尾數(shù)之商;

商的階碼是相除兩數(shù)的階碼之差?,F(xiàn)在是51頁\一共有62頁\編輯于星期四2.浮點乘、除法運算步驟浮點數(shù)的乘除運算大體分為四步:(1)0操作數(shù)檢查;(2)階碼加/減操作;(3)尾數(shù)乘/除操作;(4)結(jié)果規(guī)格化及舍入處理?,F(xiàn)在是52頁\一共有62頁\編輯于星期四(2)浮點數(shù)的階碼運算

?

對階碼的運算有+1、-1、兩階碼求和、兩階碼求差四種,

運算時還必須檢查結(jié)果是否溢出。

?在計算機中,階碼通常用補碼或移碼形式表示。①移碼的運算規(guī)則和判定溢出的方法移碼的定義為[x]移=2n+x-2n

≤x<2n[x]移+[y]移=2n+x+2n+y=2n+[x+y]移按此定義,則有=2n+(2n+(x+y))[x+y]移=-2n+[x]移+[y]移現(xiàn)在是53頁\一共有62頁\編輯于星期四

考慮到移碼和補碼的關(guān)系:

對同一個數(shù)值,其數(shù)值位完全相同,而符號位正好完全相反。

[y]補的定義為

[y]補=2n+1+y則求階碼和用如下方式完成:

=2n+1+(2n+(x+y))[x]移+[y]補=2n+x+2n+1+y即:[x+y]移=[x]移+[y]補

(mod2n+1)同理:[x-y]移=[x]移+[-y]補

(mod2n+1)②混合使用移碼和補碼現(xiàn)在是54頁\一共有62頁\編輯于星期四

使用雙符號位的階碼加法器,并規(guī)定移碼的第二個符號位,即最高符號位恒用0參加加減運算,則溢出條件是結(jié)果的最高符號位為1:

?當(dāng)?shù)臀环栁粸?時,(10)表明結(jié)果上溢,

?當(dāng)?shù)臀环栁粸?時,(11)表明結(jié)果下溢。

?當(dāng)最高符號位為0時,表明沒有溢出:

低位符號位為1,(01)表明結(jié)果為正;

為0,(00)表明結(jié)果為負。③階碼運算結(jié)果溢出處理現(xiàn)在是55頁\一共有62頁\編輯于星期四例:

x=+011,y=+110,求[x+y]移和[x-y]移,并判斷是否溢出。解:階碼取3位(不含符號位),其對應(yīng)的真值范圍是-8~+7[x]移=01011,[y]補=00110,[-y]補=11010[x+y]移=[x]移+[y]補=[x-y]移=[x]移+[-y]補=01011+0011010001結(jié)果上溢。結(jié)果正確,為-3。01011+1101000101現(xiàn)在是56頁\一共有62頁\編輯于星期四(3)尾數(shù)處理

浮點加減法對結(jié)果的規(guī)格化及舍入處理也適用于浮點乘除法。第一種方法是:無條件地丟掉正常尾數(shù)最低位之后的全部數(shù)值。這種辦法被稱為截斷

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論