第4章計算機組成原理與系統(tǒng)結(jié)構(gòu)_第1頁
第4章計算機組成原理與系統(tǒng)結(jié)構(gòu)_第2頁
第4章計算機組成原理與系統(tǒng)結(jié)構(gòu)_第3頁
第4章計算機組成原理與系統(tǒng)結(jié)構(gòu)_第4頁
第4章計算機組成原理與系統(tǒng)結(jié)構(gòu)_第5頁
已閱讀5頁,還剩150頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、http:/ 4章章 運算方法與運算器運算方法與運算器 定點數(shù)的加減運算及實現(xiàn)定點數(shù)的加減運算及實現(xiàn)4.14.1 定點運算器的組成與結(jié)構(gòu)定點運算器的組成與結(jié)構(gòu) 定點數(shù)的乘法運算及實現(xiàn)定點數(shù)的乘法運算及實現(xiàn)4.24.2 定點數(shù)除法運算及實現(xiàn)定點數(shù)除法運算及實現(xiàn)4.4 浮點運算及運算器浮點運算及運算器4.54.5 浮點運算器舉例浮點運算器舉例 4.64.6 本章小結(jié)本章小結(jié)344.1 4.1 定點數(shù)的加減運算及實現(xiàn)定點數(shù)的加減運算及實現(xiàn) 補碼加減運算與運算器補碼加減運算與運算器 機器數(shù)的移位運算機器數(shù)的移位運算 移碼加減運算與判溢移碼加減運算與判溢 十進制加法運算十進制加法運算一

2、一二二三三四四 MIPSMIPS的加減運算的加減運算五五5一、補碼加減運算與運算器一、補碼加減運算與運算器 補碼加減運算方法補碼加減運算方法 補碼加減運算的溢出判補碼加減運算的溢出判斷斷2 2 補碼加減運算器的實現(xiàn)補碼加減運算器的實現(xiàn)3 31 161 1、補碼加減運算方法、補碼加減運算方法v補碼的加減運算的公式是補碼的加減運算的公式是:nX+YX+Y補補 = X= X補補 + Y+ Y補補nX-YX-Y補補 = X= X補補 + -Y+ -Y補補v特點:特點:n使用補碼進行加減運算,使用補碼進行加減運算,符號位和數(shù)值位一樣參符號位和數(shù)值位一樣參加運算加運算。n補碼的減法可以用加法來實現(xiàn)補碼的減

3、法可以用加法來實現(xiàn),任意兩數(shù)之差的,任意兩數(shù)之差的補碼等于被減數(shù)的補碼與減數(shù)相反數(shù)的補碼之和。補碼等于被減數(shù)的補碼與減數(shù)相反數(shù)的補碼之和。注意:注意:該公式不適合任何其他機器數(shù)編碼(原碼、反碼、該公式不適合任何其他機器數(shù)編碼(原碼、反碼、移碼)。移碼)。7求補運算:求補運算:YY補補 -Y -Y補補 v求補規(guī)則:求補規(guī)則:將將YY補補包括符號位在內(nèi)每一位取反,包括符號位在內(nèi)每一位取反,末位加末位加1 1。n若若YY補補 = Y0= Y0,Y1Yn Y1Yn ,則:,則:n若若YY補補 = Y0.Y1Yn = Y0.Y1Yn ,則:,則:1YYY-Yn10 補補1YYY-Yn1000 . 0 補

4、補例:例:XX補補 =0.1101 =0.1101,則:,則: XX補補 = = ? YY補補 =1.1101 =1.1101,則:,則: YY補補 = = ?8補碼加減運算舉例補碼加減運算舉例例:例:已知已知X=+1011X=+1011,Y=-0100Y=-0100,用補碼計算,用補碼計算X+YX+Y和和X-YX-Y。n寫出補碼:寫出補碼: X X補補 =0,1011 Y =0,1011 Y補補 =1,1100 =1,1100 -Y -Y補補 =0,0100 =0,0100 n 計算:計算: 92 2、補碼加減運算的溢出判斷、補碼加減運算的溢出判斷v 溢出溢出: :當運算結(jié)果超出機器數(shù)的表示

5、范圍時,稱為當運算結(jié)果超出機器數(shù)的表示范圍時,稱為溢溢出出。v 對于加減運算,可能發(fā)生溢出的情況:同號(兩數(shù))對于加減運算,可能發(fā)生溢出的情況:同號(兩數(shù))相加,或者異號(兩數(shù))相減。相加,或者異號(兩數(shù))相減。v 確定發(fā)生溢出的情況:確定發(fā)生溢出的情況:n正數(shù)相加,且結(jié)果符號位為正數(shù)相加,且結(jié)果符號位為1 1;n負數(shù)相加,且結(jié)果符號位為負數(shù)相加,且結(jié)果符號位為0 0;n正數(shù)負數(shù),且結(jié)果符號位為正數(shù)負數(shù),且結(jié)果符號位為1 1;n負數(shù)正數(shù),且結(jié)果符號位為負數(shù)正數(shù),且結(jié)果符號位為0 0;10常用的判溢方法(補碼加減運算)常用的判溢方法(補碼加減運算)v 單符號位判溢方法單符號位判溢方法2 2 n當

6、當最高有效位最高有效位產(chǎn)生的進位和產(chǎn)生的進位和符號位符號位產(chǎn)生的進位產(chǎn)生的進位不不同同時,加減運算發(fā)生了溢出。時,加減運算發(fā)生了溢出。nV VC C1 1CCf fv 雙符號位判溢方法雙符號位判溢方法nX X和和Y Y采用雙符號位補碼參加運算,正數(shù)的雙符號采用雙符號位補碼參加運算,正數(shù)的雙符號位為位為0000,負數(shù)的雙符號位為,負數(shù)的雙符號位為1111;當運算結(jié)果的;當運算結(jié)果的兩兩位符號位符號S Sf1f1 S Sf2f2不同不同時(時(0101或或1010),發(fā)生溢出。),發(fā)生溢出。 nV V S Sf1f1 S Sf2f2= X= Xf f Y Yf f CCf f S Sf f nS

7、Sf1f1 S Sf2f2=01=01,則正溢出;,則正溢出;S Sf1f1 S Sf2f2=10=10,則負溢出,則負溢出。 11雙符號位判溢方法舉例雙符號位判溢方法舉例例:例:用補碼計算用補碼計算X+YX+Y和和X-YX-Y (1 1)X=+1000X=+1000,Y=+1001Y=+1001(2 2)X=-1000X=-1000,Y=1001Y=1001Sf1 Sf2=01,正溢出正溢出Sf1 Sf2=11,無溢出無溢出Sf1 Sf2=00,無溢出無溢出Sf1 Sf2=10,負,負溢出溢出123 3、補碼加減運算器、補碼加減運算器133 3、補碼加減運算器的實現(xiàn)、補碼加減運算器的實現(xiàn)v

8、核心部件:核心部件:一個普通的二進制并行加法器。一個普通的二進制并行加法器。A A:累加器,存放:累加器,存放XX補補;B B:寄存器,存放:寄存器,存放YY補補;v 取反電路取反電路: :n =0 =0時,補碼加法器,將時,補碼加法器,將B B寄存器直接送寄存器直接送入并行加法器入并行加法器; ;n =1 =1時,補碼減法器,將時,補碼減法器,將B B送入并行加法送入并行加法器,同時,并行加法器的最低位產(chǎn)生進位,即器,同時,并行加法器的最低位產(chǎn)生進位,即B B取取反加反加1 1,此時并行加法器的運算相當于,此時并行加法器的運算相當于AA補補加加-B-B補補 ,完成減法運算。,完成減法運算。S

9、UBADD /SUBADD /14二、機器數(shù)的移位運算二、機器數(shù)的移位運算v二進制數(shù)據(jù)(真值)每相對于小數(shù)點左移一位,相當二進制數(shù)據(jù)(真值)每相對于小數(shù)點左移一位,相當于乘以于乘以2 2;每相對于小數(shù)點右移一位,相當于除以;每相對于小數(shù)點右移一位,相當于除以2 2。1.1.計算機中的移位運算分為:計算機中的移位運算分為:n邏輯移位:邏輯移位:對對無符號數(shù)據(jù)無符號數(shù)據(jù)移位移位,導致無符號數(shù)據(jù)的,導致無符號數(shù)據(jù)的數(shù)值(無正負)放大或縮小。數(shù)值(無正負)放大或縮小。 n算術(shù)移位:算術(shù)移位:對對帶符號數(shù)據(jù)(機器數(shù))移位,在數(shù)值帶符號數(shù)據(jù)(機器數(shù))移位,在數(shù)值的絕對值上進行放大或縮小,同時,符號位必須要

10、的絕對值上進行放大或縮小,同時,符號位必須要保持不變。保持不變。 n循環(huán)移位:循環(huán)移位:所有的數(shù)據(jù)位在自身范圍內(nèi)進行左移或所有的數(shù)據(jù)位在自身范圍內(nèi)進行左移或者右移,左移時最高位移入最低位,右移時最低位者右移,左移時最高位移入最低位,右移時最低位移入最高位。移入最高位。 15二、機器數(shù)的移位運算二、機器數(shù)的移位運算v補碼的算術(shù)移位補碼的算術(shù)移位n算術(shù)左移:算術(shù)左移:符號位不變,高位移出,低位補符號位不變,高位移出,低位補0 0。為保證補碼算術(shù)左移時不發(fā)生溢出,為保證補碼算術(shù)左移時不發(fā)生溢出,移位的數(shù)移位的數(shù)據(jù)最高有效位必須與符號位相同據(jù)最高有效位必須與符號位相同。在不發(fā)生溢出的前提下,在不發(fā)生溢

11、出的前提下,用硬件實現(xiàn)補碼的算用硬件實現(xiàn)補碼的算術(shù)左移時,直接將數(shù)據(jù)最高有效位移入符號位,術(shù)左移時,直接將數(shù)據(jù)最高有效位移入符號位,不會改變機器數(shù)的符號。不會改變機器數(shù)的符號。n算術(shù)右移:算術(shù)右移:符號位不變,低位移出,符號位不變,低位移出,高位正數(shù)補高位正數(shù)補0 0,負數(shù)補負數(shù)補1 1,即高位補符號位。即高位補符號位。16補碼的算術(shù)移位舉例補碼的算術(shù)移位舉例例:例:設設X X0.1001,Y0.1001,Y0.01010.0101,求,求nXX補補 ?n2X2X補補 ?nX/2X/2補補 ?nYY補補 ?n2Y2Y補補 ?nY/2Y/2補補 ?17三、移碼加減運算與判溢三、移碼加減運算與判溢

12、1.1.移碼和移碼計算移碼和移碼計算XX移移 =2 =2n n+X Y+X Y移移 =2 =2n n+Y -2+Y -2n nX2X2n n-1-1XX移移 + Y + Y移移 =2 =2n n+X+2+X+2n n+Y= 2+Y= 2n n+ +(2 2n n +X+Y +X+Y) = 2= 2n n + X+Y + X+Y移移XX移移 + -Y + -Y移移 = 2 = 2n n + X-Y + X-Y移移 2.2.移碼和補碼混合計算移碼和補碼混合計算YY補補 =2 =2n+1n+1+Y +Y (mod 2mod 2n+1n+1) XX移移 + Y + Y補補 = X+Y = X+Y移移

13、3.3.移碼運算結(jié)果判溢:移碼運算結(jié)果判溢:雙符號位雙符號位nXX移移的最高符號位恒為的最高符號位恒為0 0nYY補補采用雙符號位采用雙符號位18三、移碼加減運算與判溢三、移碼加減運算與判溢v移碼運算結(jié)果溢出的判斷條件是:移碼運算結(jié)果溢出的判斷條件是:n當結(jié)果的最高符號位當結(jié)果的最高符號位Sf1=1Sf1=1時溢出,時溢出,Sf1=0Sf1=0時結(jié)果時結(jié)果正確。正確。Sf1 Sf2=10Sf1 Sf2=10時,結(jié)果正溢出;時,結(jié)果正溢出;Sf1 Sf2=11Sf1 Sf2=11時,結(jié)果負溢出。時,結(jié)果負溢出。n由于移碼運算用于浮點數(shù)的階碼,當運算結(jié)果正由于移碼運算用于浮點數(shù)的階碼,當運算結(jié)果正

14、溢出時,浮點數(shù)溢出時,浮點數(shù)上溢上溢;當運算結(jié)果負溢出時,??;當運算結(jié)果負溢出時,浮點數(shù)點數(shù)下溢,當作機器零處理下溢,當作機器零處理。 19舉例舉例: :vX=+1000X=+1000,Y=+1001Y=+1001,用移碼計算,用移碼計算X+YX+Y和和X-YX-Y。v解解: : X X移移 = 01= 01,1000 1000 Y Y補補 = 00= 00,1001 -Y1001 -Y補補 =11=11,01110111 X+YX+Y移移 =X=X移移 + Y+ Y補補 = 01 = 01,1000 + 001000 + 00,1001=101001=10,0001 0001 最高符號位為最

15、高符號位為1 1,溢出,最低符號位為,溢出,最低符號位為0 0,正溢出。,正溢出。 X-YX-Y移移 =X=X移移 + -Y+ -Y補補 = 01 = 01,1000 + 111000 + 11,0111= 000111= 00,1111 1111 最高符號位為最高符號位為0 0,無溢出,無溢出,X-Y= -1X-Y= -1。20四、四、十進制加法運算十進制加法運算1.1.計算機中的十進制加法器通常采用計算機中的十進制加法器通常采用BCDBCD碼設計,在二碼設計,在二進制加法器的基礎上,加上適當?shù)男U娐?,可以實進制加法器的基礎上,加上適當?shù)男U娐?,可以實現(xiàn)現(xiàn)BCDBCD碼的加法器。碼的加法

16、器。2.2.對于對于8421BCD8421BCD碼來說,當相加的兩數(shù)之和碼來說,當相加的兩數(shù)之和S9S9時,加時,加6 6校正;當校正;當S9S9時,且無進位時,結(jié)果正確,不需校正。時,且無進位時,結(jié)果正確,不需校正。 21五、五、MIPSMIPS的加減法指令以及溢出判斷的加減法指令以及溢出判斷1 1、指令、指令v加(加(addadd)、立即數(shù)加()、立即數(shù)加(addiaddi)、減法()、減法(subsub)溢出)溢出時引起中斷;時引起中斷;v無符號數(shù)加(無符號數(shù)加(adduaddu)、無符號數(shù)立即數(shù)加)、無符號數(shù)立即數(shù)加(addiuaddiu)、無符號數(shù)減法()、無符號數(shù)減法(subusu

17、bu)在溢出時不引)在溢出時不引起中斷。起中斷。22MIPSMIPS的加減法運算舉例的加減法運算舉例v add $t0,$t1,$t2 add $t0,$t1,$t2 # $t0 = $t1 + $t2; # $t0 = $t1 + $t2; 有符號數(shù)的加法運算有符號數(shù)的加法運算 v sub $t2,$t3,$t4 sub $t2,$t3,$t4 # $t2 = $t3 - $t4 # $t2 = $t3 - $t4 有符號數(shù)的減法運算有符號數(shù)的減法運算v addi $t2,$t3, 5 addi $t2,$t3, 5 # $t2 = $t3 + 5; # $t2 = $t3 + 5; 操作數(shù)

18、是立即數(shù)的加法運算操作數(shù)是立即數(shù)的加法運算v addu $t1,$t6,$t7 addu $t1,$t6,$t7 # $t1 = $t6 + $t7; # $t1 = $t6 + $t7; 無符號數(shù)的加法運算無符號數(shù)的加法運算v subu $t1,$t6,$t7 subu $t1,$t6,$t7 # $t1 = $t6 - $t7; # $t1 = $t6 - $t7; 無符號數(shù)的減法運算無符號數(shù)的減法運算23MIPSMIPS的加減法指令以及溢出判斷的加減法指令以及溢出判斷2 2、測試溢出程序舉例、測試溢出程序舉例v無無符號數(shù)加法(符號數(shù)加法($t0=$t1+$t2),$t0=$t1+$t2)

19、,判溢出測試程序:判溢出測試程序:vaddu $t0,$t1,$t2addu $t0,$t1,$t2vnor $t3,$t1,$zeronor $t3,$t1,$zero#$t3=($t1|0)#$t3=($t1|0)按位或非,即按位或非,即$t3= not $t1=2$t3= not $t1=23232-1-$t1-1-$t1vsltu #t3,$t3,$t2sltu #t3,$t3,$t2# if($t3=2# if($t3=23232-1-$t1)$t2 -1-$t1)$t2 即(即(2 23232-1-1) ($t1+$t2$t1+$t2), ,# then $t3=1;else $t

20、3=0# then $t3=1;else $t3=0vbne $t3,$zero,Overflowbne $t3,$zero,Overflow# if $t3# if $t300 則溢出則溢出24MIPSMIPS的加減法指令以及溢出判斷的加減法指令以及溢出判斷v有有符號數(shù)加法符號數(shù)加法($t0=$t1+$t2),$t0=$t1+$t2),判溢出測試程序:判溢出測試程序:vaddu $t0,$t1,$t2addu $t0,$t1,$t2#$t0=sum,#$t0=sum,但是沒有陷入異常但是沒有陷入異常vxor $t3,$t1,$t2 #xor $t3,$t1,$t2 #檢查檢查2 2個操作數(shù)符

21、號是否不同個操作數(shù)符號是否不同vslt slt $t3$t3, ,$t3$t3,$zero,$zero# #小于比較,補碼表示,小于比較,補碼表示,if if $t3$t30,then 0,then $t3$t3=1,else =1,else $t3$t3=0,=0,即符號不同即符號不同$t3$t3=1=1vbne $t3,$zero,No_overflowbne $t3,$zero,No_overflow# if $t3# if $t30,then go to 0,then go to No_overflow(No_overflowNo_overflow(No_overflow的地址是的地址

22、是PCPC+4+PCPC+4+符號位擴展符號位擴展immediate2immediate2,即當前指令的下一,即當前指令的下一條指令地址條指令地址+ +符號位擴展符號位擴展immediate2)immediate2)即即$t1$t1和和$t2$t2符號不同,則不會溢出符號不同,則不會溢出25MIPSMIPS的加減法指令以及溢出判斷的加減法指令以及溢出判斷vxor $t3,$t0,$t1xor $t3,$t0,$t1# # 如果如果$t1$t1和和$t2$t2符號相同,那么它們與和的符號符號相同,那么它們與和的符號也相同嗎?如果不同,則也相同嗎?如果不同,則$t30$t30 0 時,時,XXY

23、Y 補補 = X = X補補YY補補 =X=X補補(0 0.Y.Y1 1YYn n)50 補碼一位乘法補碼一位乘法校正法校正法n當被乘數(shù)當被乘數(shù)X X的符號任意,的符號任意,Y Y為負數(shù)時:為負數(shù)時:YY補補 = 2 + Y = 1 .Y = 2 + Y = 1 .Y1 1YYn n則:則:Y = Y = YY補補 2 = 2 = 0 0.Y.Y1 1YYn n -1 -1XXY Y 補補 = = X0 X0.Y.Y1 1YYn n X X補補 = = X X0 0.Y.Y1 1YYn n 補補 +X +X補補因為因為0 0.Y.Y1 1YYn n 0 0,所以:,所以: X X0 0.Y.Y

24、1 1YYn n 補補 = =XX補補(0 0.Y.Y1 1YYn n)所以:所以:Y Y0=0=0,商的第,商的第i i位上位上1 1,并執(zhí)行操作:,并執(zhí)行操作:余數(shù)左移一位,再減余數(shù)左移一位,再減|Y|Y|,得,得R Ri+1i+1,則:,則:R Ri i1 1=2R=2Ri i|Y|Y|733 3、原碼不恢復余數(shù)算法、原碼不恢復余數(shù)算法如果如果R Ri i00E0,則,則E EX XEEY Y,M MY Y每右移一位,每右移一位,E EY Y+1+1,直至,直至 E EY Y=E=EX X 。若若E0E0,則,則E EX XEEY Y,M MX X每右移一位,每右移一位,E EX X+1

25、+1,直至,直至E EX X=E=EY Y 。n尾數(shù)相加減尾數(shù)相加減111浮點浮點加減運算步驟加減運算步驟n結(jié)果規(guī)格化結(jié)果規(guī)格化:尾數(shù)運算的結(jié)果可能出現(xiàn)兩種:尾數(shù)運算的結(jié)果可能出現(xiàn)兩種非規(guī)格化情況:非規(guī)格化情況:尾數(shù)溢出:需要尾數(shù)溢出:需要右規(guī)(右規(guī)(1 1次)次),即尾數(shù)右移,即尾數(shù)右移1 1位,階碼位,階碼1 1| |尾數(shù)尾數(shù)| 2| 0E=30,將,將M MY Y右移右移3 3位,位,E EY Y加加3 3:YY浮浮 = 00= 00,001 00.0001100 001 00.0001100 (101101)一、一、浮點浮點加減運算加減運算116n尾數(shù)相加:尾數(shù)相加: MMZ Z 補補

26、 = = 11.100000111.1000001(101101)n結(jié)果規(guī)格化:左規(guī)一位,無溢出:結(jié)果規(guī)格化:左規(guī)一位,無溢出:MMZ Z 補補 = = 11.000001111.0000011(0101) EEZ Z 補補 = 00 = 00,001 + 11001 + 11,111= 00111= 00,000000n舍入:按照舍入:按照0 0舍舍1 1入法,尾數(shù)多余位舍去入法,尾數(shù)多余位舍去n結(jié)果為:結(jié)果為:ZZ浮浮 = 0= 0,000 1.0000011000 1.0000011一、一、浮點浮點加減運算加減運算117二、浮點乘法運算二、浮點乘法運算假設兩個浮點數(shù)假設兩個浮點數(shù)X X和

27、和Y Y:XEX2MXYEY2MY)E(EYXYX2)MM(YXZ118v浮點乘法運算步驟浮點乘法運算步驟n0 0操作數(shù)檢查操作數(shù)檢查n階碼相加階碼相加:階碼相加可以采用補碼或者移:階碼相加可以采用補碼或者移碼的定點整數(shù)加法,同時對相加結(jié)果判溢,碼的定點整數(shù)加法,同時對相加結(jié)果判溢,一旦發(fā)生正溢出,則需報告溢出,若發(fā)生負一旦發(fā)生正溢出,則需報告溢出,若發(fā)生負溢出,則將結(jié)果置為機器零。溢出,則將結(jié)果置為機器零。n尾數(shù)相乘尾數(shù)相乘n結(jié)果規(guī)格化結(jié)果規(guī)格化:可能需要左規(guī):可能需要左規(guī)1 1位位n舍入處理:舍入處理:尾數(shù)相乘的結(jié)果長度是尾數(shù)長尾數(shù)相乘的結(jié)果長度是尾數(shù)長度的兩倍,必須對低位舍入。度的兩倍,

28、必須對低位舍入。 二、浮點乘法運算二、浮點乘法運算119浮點數(shù)乘法運算流程浮點數(shù)乘法運算流程120二、浮點乘法運算(舉例)二、浮點乘法運算(舉例)例例:一浮點數(shù)表示格式為:一浮點數(shù)表示格式為:1010位浮點數(shù),階碼位浮點數(shù),階碼4 4位,包位,包含含1 1位階符,用移碼表示,尾數(shù)位階符,用移碼表示,尾數(shù)6 6位,包含位,包含1 1位數(shù)符,位數(shù)符,用補碼表示,階碼在前,尾數(shù)(包括數(shù)符)在后,用補碼表示,階碼在前,尾數(shù)(包括數(shù)符)在后,已知:已知:X=X=(-0.11001-0.11001)2 2011011 Y Y=0.10011=0.100112 2-001-001 ,求求Z=XYZ=XY。要

29、求階碼用移碼計算,尾數(shù)用補碼要求階碼用移碼計算,尾數(shù)用補碼BoothBooth算法計算。算法計算。解:解:按照浮點數(shù)的格式分別寫出它們的表示形式,為計按照浮點數(shù)的格式分別寫出它們的表示形式,為計算方便,階碼采用雙符號位移碼,尾數(shù)采用雙符號算方便,階碼采用雙符號位移碼,尾數(shù)采用雙符號位補碼:位補碼:XX浮浮 = 01= 01,011 11.00111011 11.00111YY浮浮 = 00= 00,111 00.10011111 00.10011121舉例舉例v 階碼相加階碼相加 E EZ Z 移移=E=EX X 移移+E+EY Y 補補 =01,011 + 11,111 =01,011 +

30、11,111 =01,010 =01,010 無溢出無溢出 E EZ Z 移移 =1=1,010010v 尾數(shù)相乘尾數(shù)相乘 采用補碼采用補碼BoothBooth算法算法計算計算MMX X M MY Y 補補: M MX X 補補 = 11.00111 = 11.00111 M MY Y 補補 = 0.10011 = 0.10011 -M -MX X 補補= 00.11001 = 00.11001 MZ補補= 1.10001 00101122二、浮點乘法運算(舉例)二、浮點乘法運算(舉例)-MX-MX補補 = 00.11001 = 00.11001 MZMZ補補= 1.10001 00101 =

31、 1.10001 00101 v 結(jié)果規(guī)格化結(jié)果規(guī)格化MZMZ左規(guī)一次得:左規(guī)一次得:MZ MZ 補補= 1.00010 01010 = 1.00010 01010 EZEZ減減1 1得:得:EZEZ移移 = 01= 01,010 + 11010 + 11,111 =01111 =01,001001v 舍入舍入對尾數(shù)對尾數(shù)MZMZ進行進行0 0舍舍1 1入,最后得入,最后得 ZZ浮浮 = 1= 1,001 1.00010001 1.00010123三、浮點除法運算三、浮點除法運算假設兩個浮點數(shù)假設兩個浮點數(shù)X X和和Y Y:XEX2MX YEY2MY )(YXE(EYX2MMYXZ 124v浮

32、點數(shù)除法運算步驟浮點數(shù)除法運算步驟n0 0操作數(shù)檢查操作數(shù)檢查當除數(shù)為當除數(shù)為0 0,則報告除法出錯,或者結(jié)果,則報告除法出錯,或者結(jié)果(商)無窮大;(商)無窮大;當被除數(shù)為當被除數(shù)為0 0,則商為,則商為0 0。n階碼相減階碼相減階碼相減的結(jié)果也可能溢出,若發(fā)生正溢出,階碼相減的結(jié)果也可能溢出,若發(fā)生正溢出,則需報告浮點數(shù)溢出,若發(fā)生負溢出,則將則需報告浮點數(shù)溢出,若發(fā)生負溢出,則將結(jié)果置為機器零。結(jié)果置為機器零。n尾數(shù)相除尾數(shù)相除n結(jié)果規(guī)格化結(jié)果規(guī)格化n舍入處理舍入處理 浮點數(shù)除法運算步驟浮點數(shù)除法運算步驟125浮點數(shù)除法運算流程浮點數(shù)除法運算流程126三、浮點除法運算(舉例)三、浮點除法

33、運算(舉例)例:例:一浮點數(shù)表示格式為:一浮點數(shù)表示格式為:1010位浮點數(shù),階碼位浮點數(shù),階碼4 4位,包位,包含含1 1位階符,用移碼表示,尾數(shù)位階符,用移碼表示,尾數(shù)6 6位,包含位,包含1 1位數(shù)符,位數(shù)符,用補碼表示,階碼在前,尾數(shù)(包括數(shù)符)在后,用補碼表示,階碼在前,尾數(shù)(包括數(shù)符)在后,已知:已知: X=X=(-0.11001-0.11001)2 2011011 Y Y=0.10011=0.100112 2-001-001,求求Z=XZ=XY Y。要求階碼用移碼計算,尾數(shù)用原碼加減交。要求階碼用移碼計算,尾數(shù)用原碼加減交替除法計算。替除法計算。解:解:按照浮點數(shù)的格式分別寫出它

34、們的表示形式為:按照浮點數(shù)的格式分別寫出它們的表示形式為: XX浮浮 = 1= 1,011 1.00111 Y011 1.00111 Y浮浮 = 0= 0,111 0.10011111 0.10011v 階碼相減階碼相減EZEZ移移 = EX= EX移移 +-EY+-EY補補 = 01= 01,011 + 00011 + 00,001 = 01001 = 01,100100127舉例舉例v尾數(shù)相除尾數(shù)相除采用原碼加減交替法計采用原碼加減交替法計算算|MX| |MX| |MY|MY|,首,首先寫出下例數(shù)據(jù):先寫出下例數(shù)據(jù):|MX| = 00.11001 |MX| = 00.11001 |MY|

35、= 00.10011 |MY| = 00.10011 -|MY|-|MY|補補 = 11.01101 = 11.01101 |MZ| =|MX| |MZ| =|MX| |MY| = |MY| = 1.01010 1.01010 128三、浮點除法運算(舉例)三、浮點除法運算(舉例)v結(jié)果規(guī)格化結(jié)果規(guī)格化由于由于|MX|MY|MX|MY|,所以,所以|MZ|1|MZ|1,必須右規(guī)一位,得,必須右規(guī)一位,得|MZ| = |MZ| = 0.10101 00.10101 0EZEZ加加1 1得:得:EZEZ移移 = 01= 01,100 + 00100 + 00,001 001 = 01 = 01,1

36、01101v舍入舍入對對|MZ|MZ|進行進行0 0舍舍1 1入,得入,得|MZ| = 0.10101 MZ|MZ| = 0.10101 MZ原原 = = 1.10101 MZ1.10101 MZ補補 = 1.01011= 1.01011最后:最后:ZZ浮浮 = 1= 1,101 1.01011101 1.01011129四、浮點運算器四、浮點運算器130四、浮點運算器四、浮點運算器v 浮點運算復雜程度遠遠大于定點運算。浮點運算復雜程度遠遠大于定點運算。v 根據(jù)性能要求和需要來確定是否設置浮點運算器。根據(jù)性能要求和需要來確定是否設置浮點運算器。v 在在沒有浮點運算器沒有浮點運算器的機器中,基于

37、一定的定點運算部的機器中,基于一定的定點運算部件,可以按照上述浮點運算的算法件,可以按照上述浮點運算的算法用軟件來實現(xiàn)用軟件來實現(xiàn)。這。這種方法速度較慢。種方法速度較慢。v 浮點運算器浮點運算器由兩個松散連接的定點運算部件組成由兩個松散連接的定點運算部件組成:階階碼運算部件和尾數(shù)運算部件碼運算部件和尾數(shù)運算部件。 階碼運算部件要求具有加減運算和階碼運算部件要求具有加減運算和+1+1、-1-1的功能的功能 尾數(shù)運算部件要求具有加減乘除四則運算和移位的尾數(shù)運算部件要求具有加減乘除四則運算和移位的功能。功能。 1314.6 4.6 浮點運算器舉例浮點運算器舉例 80X8780X87算術(shù)協(xié)處理器算術(shù)協(xié)

38、處理器 浮點運算流水線浮點運算流水線一一二二 MIPSMIPS的浮點操作的浮點操作三三132一、一、 80X8780X87算術(shù)協(xié)處理器算術(shù)協(xié)處理器v 算術(shù)協(xié)處理器是一個特殊用途的微處理器,專門是為算術(shù)協(xié)處理器是一個特殊用途的微處理器,專門是為有效地執(zhí)行算術(shù)或超越函數(shù)的運算而設計的。有效地執(zhí)行算術(shù)或超越函數(shù)的運算而設計的。v 微處理器截取和執(zhí)行常規(guī)指令系統(tǒng)中的指令,而協(xié)處微處理器截取和執(zhí)行常規(guī)指令系統(tǒng)中的指令,而協(xié)處理器只截取和執(zhí)行協(xié)處理器指令。協(xié)處理器指令實際理器只截取和執(zhí)行協(xié)處理器指令。協(xié)處理器指令實際上是換碼(上是換碼(ESCESC)指令,微處理器使用這些指令為協(xié))指令,微處理器使用這些指

39、令為協(xié)處理器產(chǎn)生一個內(nèi)存地址,使得協(xié)處理器可以執(zhí)行協(xié)處理器產(chǎn)生一個內(nèi)存地址,使得協(xié)處理器可以執(zhí)行協(xié)處理器指令處理器指令 1338038780387的主要性能和結(jié)構(gòu)的主要性能和結(jié)構(gòu)v 8038780387的性能的性能v 可與配套的可與配套的CPUCPU芯片異步并行工作芯片異步并行工作v 支持多種數(shù)據(jù)類型支持多種數(shù)據(jù)類型v 具有高性能的具有高性能的8080位字長的體系結(jié)構(gòu)位字長的體系結(jié)構(gòu) v 具有出色的內(nèi)部出錯管理功能,能檢測出具有出色的內(nèi)部出錯管理功能,能檢測出6 6種種錯誤錯誤v 可在可在80386/8048680386/80486微機系統(tǒng)的兩種工作模式下微機系統(tǒng)的兩種工作模式下運行運行v 擴

40、展了擴展了80386/8048680386/80486的指令系統(tǒng)的指令系統(tǒng) 1348038780387支持的支持的7 7種數(shù)據(jù)類型及其格式種數(shù)據(jù)類型及其格式 S符號位;符號位;3種種浮點數(shù)均符合浮點數(shù)均符合IEEE754標準,標準,即階碼的底為即階碼的底為2,階碼值用移碼表階碼值用移碼表示,尾數(shù)用原碼示,尾數(shù)用原碼表示表示1358038780387的主要性能和結(jié)構(gòu)的主要性能和結(jié)構(gòu)v8038780387的結(jié)構(gòu):分為兩個單元。的結(jié)構(gòu):分為兩個單元。n控制單元控制單元(Control UnitControl Unit,CUCU)將協(xié)處理器連)將協(xié)處理器連接到微處理器系統(tǒng)數(shù)據(jù)總線上。微處理器和協(xié)接到微

41、處理器系統(tǒng)數(shù)據(jù)總線上。微處理器和協(xié)處理器均監(jiān)視指令流,如果為處理器均監(jiān)視指令流,如果為ESCESC指令,則由協(xié)指令,則由協(xié)處理器予以執(zhí)行。處理器予以執(zhí)行。1368038780387的主要性能和結(jié)構(gòu)的主要性能和結(jié)構(gòu)v8038780387的結(jié)構(gòu):分為兩個單元。的結(jié)構(gòu):分為兩個單元。n數(shù)字執(zhí)行單元數(shù)字執(zhí)行單元(Numeric Execution unitNumeric Execution unit,NEUNEU)負責執(zhí)行所有協(xié)處理器指令。)負責執(zhí)行所有協(xié)處理器指令。 NEUNEU中有一個由中有一個由8 8個個8080位寄存器構(gòu)成的堆棧,位寄存器構(gòu)成的堆棧,用于存儲算術(shù)指令的操作數(shù)和結(jié)果。用于存儲算術(shù)

42、指令的操作數(shù)和結(jié)果。 NEUNEU中還包含狀態(tài)寄存器、控制寄存器、標中還包含狀態(tài)寄存器、控制寄存器、標記寄存器和異常指針寄存器。記寄存器和異常指針寄存器。 FSTSWAXFSTSWAX指令是協(xié)處理器允許通過指令是協(xié)處理器允許通過AXAX寄存器寄存器和微處理器直接通信的唯一指令。和微處理器直接通信的唯一指令。1378038780387內(nèi)部結(jié)構(gòu)框圖內(nèi)部結(jié)構(gòu)框圖 138寄存器堆棧寄存器堆棧 v 8038780387包含包含8 8個寄存器個寄存器,每個為,每個為8080位位寬,它們首尾相寬,它們首尾相接,組成一個接,組成一個“先進后出先進后出”的寄存器堆棧。這些堆的寄存器堆棧。這些堆棧寄存器中總是棧寄

43、存器中總是包含一個包含一個8080位的擴展精度浮點數(shù)位的擴展精度浮點數(shù)。數(shù)據(jù)只有駐留在內(nèi)存時才可能是任何其他格式。當數(shù)據(jù)只有駐留在內(nèi)存時才可能是任何其他格式。當數(shù)據(jù)從內(nèi)存中移到協(xié)處理器的寄存器堆棧中時,協(xié)數(shù)據(jù)從內(nèi)存中移到協(xié)處理器的寄存器堆棧中時,協(xié)處理器將這些帶符號的整數(shù)、處理器將這些帶符號的整數(shù)、BCDBCD數(shù)、單精度或雙精數(shù)、單精度或雙精度數(shù)轉(zhuǎn)換為擴展精度浮點數(shù)。度數(shù)轉(zhuǎn)換為擴展精度浮點數(shù)。v 8 8個寄存器編號為個寄存器編號為0-70-7,處于棧頂?shù)募拇嫫鞣Q為,處于棧頂?shù)募拇嫫鞣Q為棧頂棧頂寄存器寄存器,它的,它的編號由狀態(tài)寄存器的編號由狀態(tài)寄存器的TOPTOP字段指出字段指出。在。在協(xié)處理

44、器指令中,用協(xié)處理器指令中,用STST表示棧頂寄存器,用表示棧頂寄存器,用STST(i i)(i=1-7i=1-7)訪問相對于棧頂寄存器偏移量為)訪問相對于棧頂寄存器偏移量為i i的寄存的寄存器,即器,即i i是偏移量,而不是寄存器實際的編號。是偏移量,而不是寄存器實際的編號。139狀態(tài)寄存器狀態(tài)寄存器v狀態(tài)寄存器反映協(xié)處理器所有指令的運行情況。狀態(tài)寄存器反映協(xié)處理器所有指令的運行情況。只在只在8018780187以上的以上的更高型號中使用更高型號中使用 140狀態(tài)寄存器狀態(tài)寄存器nB B忙位忙位(busy bitbusy bit)表明協(xié)處理器正忙于執(zhí)行一項)表明協(xié)處理器正忙于執(zhí)行一項任務,通

45、過檢測狀態(tài)寄存器或者使用任務,通過檢測狀態(tài)寄存器或者使用FWAITFWAIT指令均指令均可測試忙位。由于較新的協(xié)處理器自動與微處理器可測試忙位。由于較新的協(xié)處理器自動與微處理器同步,所以在執(zhí)行其他協(xié)處理器任務之前不必測試同步,所以在執(zhí)行其他協(xié)處理器任務之前不必測試忙標志。忙標志。nC3C3C0C0 條件碼位條件碼位(condition code bit(condition code bit),表明了),表明了協(xié)處理器的條件。協(xié)處理器的條件。nTOPTOP棧頂棧頂(top-of-stacktop-of-stack,STST)位表示當前尋)位表示當前尋址為棧頂?shù)募拇嫫?,通常是寄存器址為棧頂?shù)募拇嫫?/p>

46、,通常是寄存器STST(0 0)。nESES錯誤匯總錯誤匯總(error summaryerror summary)位,當任何一)位,當任何一個非屏蔽的錯誤位(個非屏蔽的錯誤位(PEPE、UEUE、OEOE、ZEZE、DEDE或或IEIE)被)被置位時,則置位時,則ESES被置位。在被置位。在80878087協(xié)處理器中該位也可協(xié)處理器中該位也可引起協(xié)處理器中斷。但從引起協(xié)處理器中斷。但從8018780187開始,不再有協(xié)處開始,不再有協(xié)處理器中斷。理器中斷。141狀態(tài)寄存器狀態(tài)寄存器nSFSF堆棧標志堆棧標志(stack flagstack flag)位用于區(qū)分堆棧)位用于區(qū)分堆棧上溢和下溢的

47、非法操作。當該位被置上溢和下溢的非法操作。當該位被置1 1時,再根據(jù)時,再根據(jù)標志位標志位B9B9(C1C1)來區(qū)分上溢和下溢兩種情況。)來區(qū)分上溢和下溢兩種情況。nPEPE精度錯誤精度錯誤(precision errorprecision error)表明結(jié)果)表明結(jié)果或操作數(shù)超過了設定的精度范圍。或操作數(shù)超過了設定的精度范圍。nUEUE下溢錯誤下溢錯誤(underflow errorunderflow error)表明一個)表明一個非非0 0的結(jié)果太小,以致于不能用由控制字選擇的當?shù)慕Y(jié)果太小,以致于不能用由控制字選擇的當前精度來表示。前精度來表示。nOEOE上溢錯誤上溢錯誤(overflo

48、w erroroverflow error)表明結(jié)果太)表明結(jié)果太大而不能被表示出來,如果此錯誤被屏蔽,則協(xié)大而不能被表示出來,如果此錯誤被屏蔽,則協(xié)處理器對上溢錯誤就會產(chǎn)生一個無窮大。處理器對上溢錯誤就會產(chǎn)生一個無窮大。142狀態(tài)寄存器狀態(tài)寄存器nZEZE被零除錯誤被零除錯誤(zero errorzero error)表明當被除)表明當被除數(shù)是非無窮大和非零時,除數(shù)是零。數(shù)是非無窮大和非零時,除數(shù)是零。nDEDE非規(guī)格化操作數(shù)錯誤非規(guī)格化操作數(shù)錯誤(denormalized denormalized errorerror)表明至少有一個操作數(shù)是非規(guī)格化的。)表明至少有一個操作數(shù)是非規(guī)格化的。

49、nIEIE非法操作錯誤非法操作錯誤(Invalid errorInvalid error)表明堆)表明堆棧有上溢或下溢錯誤,是不確定的形式(棧有上溢或下溢錯誤,是不確定的形式(0 00 0、+ + 和和- -等),或者使用了等),或者使用了NANNAN作為操作數(shù)。此標作為操作數(shù)。此標志表明諸如對負數(shù)開平方等類似的錯誤。志表明諸如對負數(shù)開平方等類似的錯誤。143狀態(tài)寄存器狀態(tài)寄存器v 執(zhí)行執(zhí)行FSTSWFSTSW指令就可以訪問狀態(tài)寄存器,此指令將狀指令就可以訪問狀態(tài)寄存器,此指令將狀態(tài)寄存器中的內(nèi)容存人內(nèi)存的一個字單元中。在態(tài)寄存器中的內(nèi)容存人內(nèi)存的一個字單元中。在8018780187或或801

50、8780187以上的協(xié)處理器中,以上的協(xié)處理器中,F(xiàn)STSW AXFSTSW AX指令可將指令可將狀態(tài)寄存器中的內(nèi)容直接復制到微處理器的狀態(tài)寄存器中的內(nèi)容直接復制到微處理器的AXAX寄存器寄存器中。一旦狀態(tài)寄存器的狀態(tài)被存儲到內(nèi)存或中。一旦狀態(tài)寄存器的狀態(tài)被存儲到內(nèi)存或AXAX寄存器寄存器中,則可以使用常規(guī)軟件檢測狀態(tài)寄存器中的各位,中,則可以使用常規(guī)軟件檢測狀態(tài)寄存器中的各位,譬如使用以下兩種方法測試狀態(tài)寄存器的各位。一種譬如使用以下兩種方法測試狀態(tài)寄存器的各位。一種方法是使用方法是使用TESTTEST指令來測試狀態(tài)寄存器的各位,另一指令來測試狀態(tài)寄存器的各位,另一種方法是使用種方法是使用S

51、AHFSAHF指令將狀態(tài)寄存器中最左邊的指令將狀態(tài)寄存器中最左邊的8 8位位傳送到微處理器的標志寄存器中。傳送到微處理器的標志寄存器中。v 協(xié)處理器和微處理器之間的通信在協(xié)處理器和微處理器之間的通信在8018780187和和8028780287中是中是通過通過I IO O端口端口00FAH00FAH00FFH00FFH實現(xiàn)的,而在實現(xiàn)的,而在8038780387Pentium4Pentium4中是通過中是通過I IO O端口端口800000FAH800000FAH800000FFH800000FFH實實現(xiàn)的。現(xiàn)的。144控制寄存器控制寄存器 v 控制寄存器包括精度控制、舍入控制和無窮大控制,控

52、制寄存器包括精度控制、舍入控制和無窮大控制,它也可以屏蔽或者不屏蔽與狀態(tài)寄存器最右邊它也可以屏蔽或者不屏蔽與狀態(tài)寄存器最右邊6 6位對位對應的異常位。應的異常位。FLDCWFLDCW指令用于給控制寄存器賦值。指令用于給控制寄存器賦值。v 控制寄存器中各位及各個組合位的功能:控制寄存器中各位及各個組合位的功能:ICIC無窮大控制(無窮大控制(infinity controlinfinity control)RCRC舍入控制(舍入控制(rounding controlrounding control)PCPC精度控制(精度控制(precision controlprecision control)

53、Exception MasksException Masks異常屏蔽字段異常屏蔽字段1458038780387控制寄存器控制寄存器146標記寄存器標記寄存器v 標記寄存器(標記寄存器(tag registertag register)表明協(xié)處理器堆棧中)表明協(xié)處理器堆棧中每個寄存器內(nèi)容的狀態(tài)特征,又叫每個寄存器內(nèi)容的狀態(tài)特征,又叫特征寄存器特征寄存器。標。標記寄存器用每記寄存器用每2 2位表示寄存器堆棧中位表示寄存器堆棧中1 1個寄存器的狀個寄存器的狀態(tài),即態(tài),即TAGTAG(i i)表示堆棧寄存器)表示堆棧寄存器STST(i i)的狀態(tài)。)的狀態(tài)。TAGTAG(i i)特征值為)特征值為00

54、001111四種組合時分別表明相應四種組合時分別表明相應的寄存器有正確數(shù)據(jù)、數(shù)據(jù)為的寄存器有正確數(shù)據(jù)、數(shù)據(jù)為0 0、數(shù)據(jù)非法、無數(shù)據(jù)、數(shù)據(jù)非法、無數(shù)據(jù)4 4種情況。種情況。v 通過程序查看標記寄存器的唯一方法通過程序查看標記寄存器的唯一方法是使用是使用FSTENVFSTENV、FSAVEFSAVE或或FRSTORFRSTOR指令來存儲協(xié)處理器操作環(huán)境。其指令來存儲協(xié)處理器操作環(huán)境。其中每條指令均可將標記寄存器與其他協(xié)處理器數(shù)據(jù)中每條指令均可將標記寄存器與其他協(xié)處理器數(shù)據(jù)一起存儲。一起存儲。 147標記寄存器標記寄存器148二、浮點運算流水線二、浮點運算流水線v為了實現(xiàn)流水,首先必須把輸入的任務

55、分割為為了實現(xiàn)流水,首先必須把輸入的任務分割為一系列的子任務,使各子任務能在流水線的各一系列的子任務,使各子任務能在流水線的各個階段個階段并發(fā)地并發(fā)地執(zhí)行。將任務連續(xù)不斷地輸入流執(zhí)行。將任務連續(xù)不斷地輸入流水線,從而實現(xiàn)了子任務的水線,從而實現(xiàn)了子任務的并行并行。v流水處理大幅度地改善了計算機的系統(tǒng)性能,流水處理大幅度地改善了計算機的系統(tǒng)性能,是在計算機上實現(xiàn)是在計算機上實現(xiàn)時間并行性時間并行性的一種非常經(jīng)濟的一種非常經(jīng)濟的方法。的方法。149二、浮點運算流水線二、浮點運算流水線 v PentiumPentium浮點流水線由浮點流水線由預取預取PFPF、首次譯碼、首次譯碼D1D1、二次譯、二次

56、譯碼碼D2D2、取操作數(shù)、取操作數(shù)EXEX、首次執(zhí)行、首次執(zhí)行X1X1、二次執(zhí)行、二次執(zhí)行X2X2、浮點、浮點寄存器寫入寄存器寫入WFWF和出錯報告和出錯報告ERER共共8 8個個操作步驟組成。操作步驟組成。v PentiumPentium微處理器的浮點流水線由浮點接口、寄存器微處理器的浮點流水線由浮點接口、寄存器組及控制部件組及控制部件FIRCFIRC、浮點指數(shù)功能部件、浮點指數(shù)功能部件FEXPFEXP、浮點乘、浮點乘法部件法部件FMULFMUL、浮點加法部件、浮點加法部件FADDFADD、浮點除法部件、浮點除法部件FDIVFDIV以及浮點舍入處理部件以及浮點舍入處理部件PFRNDPFRND

57、共共7 7個部件組成。個部件組成。v PentiumPentium浮點流水線對于浮點的取數(shù)、加減法、乘法浮點流水線對于浮點的取數(shù)、加減法、乘法和比較等和比較等“基本基本”操作,采用了新的算法并用硬件來操作,采用了新的算法并用硬件來實現(xiàn),其執(zhí)行速度是實現(xiàn),其執(zhí)行速度是8048680486的的1010倍多,允許單周期通倍多,允許單周期通過,即能以每個時鐘執(zhí)行一條浮點指令的速度來執(zhí)行。過,即能以每個時鐘執(zhí)行一條浮點指令的速度來執(zhí)行。150二、浮點運算流水線二、浮點運算流水線 v PentiumPentium浮點部件內(nèi)配置了直接支持浮點部件內(nèi)配置了直接支持3 3倍精度浮點計倍精度浮點計算的部件,極大地

58、簡化了微體系結(jié)構(gòu),并明顯地改算的部件,極大地簡化了微體系結(jié)構(gòu),并明顯地改進了浮點部件的性能。進了浮點部件的性能。v 基于基于NetBurstNetBurst微架構(gòu)的微架構(gòu)的Pentium4Pentium4實現(xiàn)了被稱作為流實現(xiàn)了被稱作為流SIMDSIMD擴展擴展2 2(SSE2SSE2)的)的144144條新條新SIMDSIMD指令,這些新指指令,這些新指令支持令支持128128位的位的SIMDSIMD整數(shù)操作和整數(shù)操作和128128位位SIMDSIMD雙精度浮雙精度浮點操作。點操作。v CoreCore構(gòu)架擁有構(gòu)架擁有2 2個浮點執(zhí)行單元同時處理向量和標個浮點執(zhí)行單元同時處理向量和標量的浮點運算,其中一個浮點單元負責加減等簡單量的浮點運算,其中一個浮點單元負責加減等簡單的處理,而另一個浮點單元則負責乘除等運算。的處理,而另一個浮點單元則負責乘

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論