




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2.2 2.2 定點(diǎn)加法、減法運(yùn)算定點(diǎn)加法、減法運(yùn)算n2.2.1 補(bǔ)碼加法n2.2.2 補(bǔ)碼減法n2.2.3 溢出概念與檢驗方法n2.2.4 基本的二進(jìn)制加法減法器n2.2.5 十進(jìn)制加法器2.2.1 補(bǔ)碼加法n補(bǔ)碼加法的公式是補(bǔ)碼加法的公式是 x x 補(bǔ)補(bǔ)+y y 補(bǔ)補(bǔ)= = + + 補(bǔ)補(bǔ) n在模在模2意義下,任意兩數(shù)的補(bǔ)碼之和等于意義下,任意兩數(shù)的補(bǔ)碼之和等于該兩數(shù)之和的補(bǔ)碼該兩數(shù)之和的補(bǔ)碼n這是這是補(bǔ)碼加法的理論基礎(chǔ)補(bǔ)碼加法的理論基礎(chǔ),其結(jié)論也適,其結(jié)論也適用于定點(diǎn)整數(shù)用于定點(diǎn)整數(shù)2.2.1 補(bǔ)碼加法( (續(xù)續(xù)1 1)0,0,則,則0。 相加兩數(shù)都是正數(shù),故其和也一定是正數(shù)。相加兩數(shù)都是
2、正數(shù),故其和也一定是正數(shù)。正數(shù)的補(bǔ)碼和原碼是一樣的,可得:正數(shù)的補(bǔ)碼和原碼是一樣的,可得: x x 補(bǔ)補(bǔ)+ + y y 補(bǔ)補(bǔ)= =+ +=+ + 補(bǔ)補(bǔ) (mod 2) 分四種情況來證明分四種情況來證明:2.2.1 補(bǔ)碼加法( (續(xù)續(xù)2 2)0,0,則則0或或0時,時,2 +(x+y) 2,進(jìn)位,進(jìn)位2必丟失,又必丟失,又因因(x+y) 0,故故 x x 補(bǔ)補(bǔ) yy補(bǔ)補(bǔ)=+ + 補(bǔ)補(bǔ) (mod 2)當(dāng)當(dāng)x+y0時,時,2 +(x+y) 2,又因,又因(x+y)0,故故 x x 補(bǔ)補(bǔ) yy補(bǔ)補(bǔ)2() =+ + 補(bǔ)補(bǔ) (mod 2)2.2.1 補(bǔ)碼加法( (續(xù)續(xù)3 3)0,則則0或或 0。n 這種情
3、況和第這種情況和第2種情況一樣,把種情況一樣,把和和的位的位置對調(diào)即得證。置對調(diào)即得證。2.2.1 補(bǔ)碼加法( (續(xù)續(xù)4 4)0,0,則則0。 相加兩數(shù)都是負(fù)數(shù),則其和也一定是負(fù)數(shù)。相加兩數(shù)都是負(fù)數(shù),則其和也一定是負(fù)數(shù)。 x x 補(bǔ)補(bǔ) 2, yy 補(bǔ)補(bǔ)2 x x 補(bǔ)補(bǔ) yy 補(bǔ)補(bǔ) 2 2=2( 2) (x+y)是負(fù)數(shù),其絕對值又小于是負(fù)數(shù),其絕對值又小于1,那么,那么(2 +(x+y)一定是小于一定是小于2而大于而大于1的數(shù),進(jìn)位的數(shù),進(jìn)位”2”必丟失。又因必丟失。又因()0,所以,所以 x x 補(bǔ)補(bǔ) yy 補(bǔ)補(bǔ) 2() =+ + 補(bǔ)補(bǔ) (mod 2)在模在模2意義下,任意兩數(shù)的補(bǔ)碼之和等于該
4、兩意義下,任意兩數(shù)的補(bǔ)碼之和等于該兩數(shù)之和的補(bǔ)碼。數(shù)之和的補(bǔ)碼。 這是這是補(bǔ)碼加法的理論基礎(chǔ)補(bǔ)碼加法的理論基礎(chǔ),其結(jié)論也適用于,其結(jié)論也適用于定點(diǎn)整數(shù)。定點(diǎn)整數(shù)。2.2.1 補(bǔ)碼加法( (續(xù)續(xù)5 5)例例8:0.1001,0.0101,求,求。解:解:例例9:0.1011,0.0101, 求求解:解:由以上兩例看到,由以上兩例看到,補(bǔ)碼加法的特點(diǎn)補(bǔ)碼加法的特點(diǎn):一是一是符號位要作為數(shù)的一部分一起參加運(yùn)算符號位要作為數(shù)的一部分一起參加運(yùn)算二是二是要在模要在模2的意義下相加,即超過的意義下相加,即超過2的進(jìn)位要丟掉。的進(jìn)位要丟掉。 例8之解 x x 補(bǔ)補(bǔ)0.1001, y y 補(bǔ)補(bǔ)0.0101 x
5、 x 補(bǔ)補(bǔ) 0.1001 y y 補(bǔ)補(bǔ)0.0101 + + 補(bǔ)補(bǔ) 0.1110 所以所以0.1110 返返 回回例9之解 x x 補(bǔ)補(bǔ)0.1011, y y 補(bǔ)補(bǔ)1.1011 x x 補(bǔ)補(bǔ) 0.1011 y y 補(bǔ)補(bǔ)1.1011 + + 補(bǔ)補(bǔ) 10.0110 所以所以0.0110返回返回 證明:證明:-Y補(bǔ)補(bǔ)=-Y補(bǔ)補(bǔ)(mod 2)因為 X+Y補(bǔ)=X補(bǔ)+Y補(bǔ) (mod 2)所以 Y補(bǔ)=X+Y補(bǔ)-X補(bǔ)又因為 X-Y補(bǔ)=X+(-Y)補(bǔ)= X補(bǔ)+-Y補(bǔ)所以 -Y補(bǔ)=X-Y補(bǔ)-X補(bǔ)則 -Y補(bǔ)+Y補(bǔ)=X-Y補(bǔ)+X+Y補(bǔ)-X補(bǔ)-X補(bǔ) = X+Y+X-Y補(bǔ) -X補(bǔ)-X補(bǔ) =0所以 -Y補(bǔ)=-Y補(bǔ) (mod
6、2) 證明證明從從y 補(bǔ)補(bǔ)求求-y 補(bǔ)的法則補(bǔ)的法則是:是: 對對補(bǔ)補(bǔ)包括符號位在內(nèi)包括符號位在內(nèi)“按位求反且最末位加按位求反且最末位加1”,即可得到,即可得到-補(bǔ)補(bǔ)。寫成運(yùn)算表達(dá)式,則為:寫成運(yùn)算表達(dá)式,則為: -補(bǔ)補(bǔ)補(bǔ)補(bǔ) (2.21) 表示對表示對補(bǔ)補(bǔ)作作包括符號位在內(nèi)包括符號位在內(nèi)的按位求反操作的按位求反操作 表示最末位的表示最末位的1 2n2.2.2 補(bǔ)碼減法(續(xù)(續(xù)1 1)例例10:已知已知10.1110,20.1101,求:求: x x1 補(bǔ)補(bǔ) ,-x x1 補(bǔ)補(bǔ) , x x2 補(bǔ)補(bǔ) ,-x x2 補(bǔ)補(bǔ)。 解:解:例例11:0.1101,0.0110,求求。 解:解:例10之解 x
7、 x1 補(bǔ)補(bǔ)1.0010 - - x x1 補(bǔ)補(bǔ) x x1 補(bǔ)補(bǔ) 2-4 0.11010.00010.1110 x x2 補(bǔ)補(bǔ)0.1101 - - x x2 補(bǔ)補(bǔ) x x2 補(bǔ)補(bǔ) 2-4 1.00100.00011.0011 返回返回 例11之解 x x 補(bǔ)補(bǔ)0.1101, y y 補(bǔ)補(bǔ)0.0110-y-y補(bǔ)補(bǔ)1.1010 x x 補(bǔ)補(bǔ) 0.1101 -y y 補(bǔ)補(bǔ) 1.1010 - - 補(bǔ)補(bǔ) 10.0111 所以所以0.0111返回返回 2.2.3 溢出概念與檢驗方法以定點(diǎn)小數(shù)為例:以定點(diǎn)小數(shù)為例: 在定點(diǎn)小數(shù)機(jī)器中在定點(diǎn)小數(shù)機(jī)器中, ,數(shù)的表示范圍為數(shù)的表示范圍為| |1. | x 0 4
8、+x = 4-|x| 0 x -2 (2.22)溢出概念與檢測方法溢出概念與檢測方法或用同余式表示:或用同余式表示:補(bǔ)補(bǔ)4(mod 4)下式也同樣成立:下式也同樣成立: 補(bǔ)補(bǔ) 補(bǔ)補(bǔ) 補(bǔ)補(bǔ)(mod 4)計算時計算時: 1. 兩個符號位都看作數(shù)碼一樣參加運(yùn)算兩個符號位都看作數(shù)碼一樣參加運(yùn)算 2.2.兩數(shù)進(jìn)行以兩數(shù)進(jìn)行以4位模的加法位模的加法, ,即最高符號位上產(chǎn)生的進(jìn)即最高符號位上產(chǎn)生的進(jìn)位要丟掉。位要丟掉。 采用變形補(bǔ)碼后,如果兩個數(shù)相加后,其結(jié)果的采用變形補(bǔ)碼后,如果兩個數(shù)相加后,其結(jié)果的 符號位出現(xiàn)符號位出現(xiàn)“01”或或“10”兩種組合時兩種組合時, ,表示發(fā)生表示發(fā)生溢出。這是因為兩個絕對
9、值小于溢出。這是因為兩個絕對值小于1的數(shù)相加的數(shù)相加, ,其結(jié)果其結(jié)果不會大于或等于不會大于或等于2。所以,最高符號位所表示的是。所以,最高符號位所表示的是結(jié)結(jié)果的正確符號果的正確符號。溢出概念與檢測方法溢出概念與檢測方法得到兩數(shù)變形補(bǔ)碼之和等于兩數(shù)之和的變形補(bǔ)碼得到兩數(shù)變形補(bǔ)碼之和等于兩數(shù)之和的變形補(bǔ)碼, , 補(bǔ)補(bǔ) 補(bǔ)補(bǔ) 補(bǔ)補(bǔ)(mod 4) 例例1414 0.1100.1100, 0, 0.1000,0.1000,求求。溢出概念與檢測方法溢出概念與檢測方法 解解 : 補(bǔ)補(bǔ)00.1100,補(bǔ)補(bǔ)00.1000 補(bǔ)補(bǔ) 00.1100 補(bǔ)補(bǔ) 00.1000 01.0100 兩個符號位出現(xiàn)兩個符號位出
10、現(xiàn)“01”01”, ,表示已溢出表示已溢出, ,即即結(jié)果大于結(jié)果大于1 1。上溢上溢 又又例例 0.1100.1100, 0, 0.0001,0.0001,求求。溢出概念與檢測方法溢出概念與檢測方法 解解 : 補(bǔ)補(bǔ)00.1100,補(bǔ)補(bǔ)00.0001 補(bǔ)補(bǔ) 00.1100 補(bǔ)補(bǔ) 00.0001 00.1101 兩個符號位兩個符號位 =“00”,=“00”,表示表示無溢出無溢出。 例例1515 0.1100, 0.1100, -0.1000,-0.1000,求求。溢出概念與檢測方法溢出概念與檢測方法 解解 : 補(bǔ)補(bǔ)11.0100,補(bǔ)補(bǔ)11.1000 補(bǔ)補(bǔ)11.0100補(bǔ)補(bǔ)11.1000 10.11
11、00兩個符號位出現(xiàn)兩個符號位出現(xiàn)“10”, ,表示已溢出表示已溢出, ,即結(jié)果小即結(jié)果小于于1。下溢下溢 又例又例 0.0100, 0.0100, -0.1000,-0.1000,求求。溢出概念與檢測方法溢出概念與檢測方法 解解 : 補(bǔ)補(bǔ)11.1100,補(bǔ)補(bǔ)11.1000 補(bǔ)補(bǔ)11.1100補(bǔ)補(bǔ)11.1000 11.0100兩個符號位出現(xiàn)兩個符號位出現(xiàn)“11”, ,表示表示無溢出無溢出。溢出概念與檢測方法溢出概念與檢測方法由此可以得出如下結(jié)論由此可以得出如下結(jié)論:1.1. 當(dāng)以模當(dāng)以模4 4補(bǔ)碼運(yùn)算補(bǔ)碼運(yùn)算, ,運(yùn)算結(jié)果的運(yùn)算結(jié)果的二符號位相異二符號位相異時時, ,表示表示溢出溢出;相同相同時
12、時, ,表示表示未溢出未溢出。故溢出邏輯表故溢出邏輯表達(dá)式為達(dá)式為 V VS Sf f1 1S Sf f2 2, ,其中其中S Sf f1 1和和S Sf f2 2分別為最高符號分別為最高符號位和第二符號位。此邏輯表達(dá)式可用位和第二符號位。此邏輯表達(dá)式可用異或門異或門實現(xiàn)。實現(xiàn)。2. 2. 模模4 4補(bǔ)碼相加的結(jié)果補(bǔ)碼相加的結(jié)果, ,不論溢出與否不論溢出與否, ,最高符號位最高符號位始終指示正確的符號。始終指示正確的符號。 溢出概念與檢測方法溢出概念與檢測方法第二種溢出檢測方法第二種溢出檢測方法:采用采用“單符號位法單符號位法”。 從例從例1 1和和例例2 2中看到中看到:(1).:(1).當(dāng)
13、最高有效位產(chǎn)生進(jìn)位而當(dāng)最高有效位產(chǎn)生進(jìn)位而符號位無進(jìn)位時符號位無進(jìn)位時, ,產(chǎn)生產(chǎn)生上溢上溢;(2).(2).當(dāng)最高有效位無進(jìn)當(dāng)最高有效位無進(jìn)位而符號位有進(jìn)位時位而符號位有進(jìn)位時, ,產(chǎn)生產(chǎn)生下溢下溢。 故:故:溢出邏輯表達(dá)式為溢出邏輯表達(dá)式為: V VC Cr rC Co o其中其中: : C Cf f為符號位產(chǎn)生的進(jìn)位為符號位產(chǎn)生的進(jìn)位, ,C Co o為最高有效位產(chǎn)生的為最高有效位產(chǎn)生的進(jìn)位。(進(jìn)位。(顯然:此邏輯關(guān)系可用異或門方便地實現(xiàn)顯然:此邏輯關(guān)系可用異或門方便地實現(xiàn))。)。 在定點(diǎn)機(jī)中,當(dāng)運(yùn)算結(jié)果發(fā)生溢出時在定點(diǎn)機(jī)中,當(dāng)運(yùn)算結(jié)果發(fā)生溢出時, ,機(jī)器通過邏機(jī)器通過邏輯電路自動檢查出
14、溢出故障輯電路自動檢查出溢出故障, ,并進(jìn)行中斷處理。并進(jìn)行中斷處理。 2.2.4 基本的二進(jìn)制加法減法器n兩個二進(jìn)制數(shù)字兩個二進(jìn)制數(shù)字Ai,Bi和和一個進(jìn)位輸入一個進(jìn)位輸入Ci相加,產(chǎn)生相加,產(chǎn)生一個和輸出一個和輸出Si,以及一個,以及一個進(jìn)位輸出進(jìn)位輸出Ci+1。n表表2.2中列出一位全加器中列出一位全加器進(jìn)行加法運(yùn)算的輸入輸出進(jìn)行加法運(yùn)算的輸入輸出真值表。真值表。2.2.4 基本的二進(jìn)制加法減法器(續(xù)(續(xù)1 1)n根據(jù)真值表,三個輸入端和兩個輸入端可按如下邏根據(jù)真值表,三個輸入端和兩個輸入端可按如下邏輯方程進(jìn)行聯(lián)系:輯方程進(jìn)行聯(lián)系: Si Ai Bi Ci Ci+1 Ai Bi + Bi
15、 Ci +Ci Ai (2.23)n按此表達(dá)式組成的一位全加器示圖按此表達(dá)式組成的一位全加器示圖2.2(b)。二進(jìn)制加法二進(jìn)制加法/減法器減法器對一位全加器對一位全加器(FA)來說來說,Si的時間延遲為的時間延遲為6T(每級異或門延遲每級異或門延遲3T),Ci1的時間延遲為的時間延遲為5T,其中其中T被定義為相應(yīng)于單級邏輯被定義為相應(yīng)于單級邏輯電路的單位門延遲。電路的單位門延遲。T通常通常采用一個采用一個“與非與非”門或一個門或一個“或非或非”門的時間延遲來門的時間延遲來作為度量單位。作為度量單位。3T+3T3T+T+T一位全加器一位全加器 按式按式(2.23)組成的一位全加器(組成的一位全加
16、器(FA)示意圖)示意圖2.2(b)n n 個個1位的全加器位的全加器(FA)可級聯(lián)成一個可級聯(lián)成一個n 位的行波進(jìn)位的行波進(jìn)位加減器。位加減器。nM為方式控制輸入線為方式控制輸入線, 當(dāng)當(dāng)M=0時,作加法時,作加法(A+B)運(yùn)算;運(yùn)算; 當(dāng)當(dāng)M=1時,作減法時,作減法(A-B)運(yùn)算。轉(zhuǎn)化成運(yùn)算。轉(zhuǎn)化成A補(bǔ)補(bǔ)+-B補(bǔ)補(bǔ)運(yùn)算,求補(bǔ)過程由運(yùn)算,求補(bǔ)過程由B+1來實現(xiàn)。來實現(xiàn)。n 起始進(jìn)位連接到功能方式線起始進(jìn)位連接到功能方式線M上,作減法時上,作減法時M=1,相當(dāng)于在加法器的最低位上加相當(dāng)于在加法器的最低位上加1。n圖中左邊是單符號位法的溢出檢測邏輯;當(dāng)圖中左邊是單符號位法的溢出檢測邏輯;當(dāng)CnC
17、n1時,運(yùn)算無溢出;而當(dāng)時,運(yùn)算無溢出;而當(dāng)Cn Cn1時,運(yùn)算有溢時,運(yùn)算有溢出,經(jīng)異或門產(chǎn)生溢出信號。出,經(jīng)異或門產(chǎn)生溢出信號。二進(jìn)制加法二進(jìn)制加法/減法器減法器延遲時間延遲時間t ta a為為: : 2T2T延遲時間延遲時間t ta a為為: : 3T3T考慮溢出檢測時考慮溢出檢測時,延遲時間延遲時間t ta a為為: : t ta an n2 2T T9 9T T (2(2n n9)9)T T當(dāng)不考慮溢出檢測時當(dāng)不考慮溢出檢測時,有:,有: t ta a( (n-1)n-1)2 2T T9 9T T 2.2.4 基本的二進(jìn)制加法減法器(續(xù)(續(xù)3 3)n對一位全加器來說,對一位全加器來說
18、,Si的時間延遲為的時間延遲為6T,Ci+1的時的時間延遲為間延遲為5T。T通常采用一個通常采用一個“與非與非”門或一個門或一個“或非或非”門的時間延遲來作為度量單位。門的時間延遲來作為度量單位。 n計算一個計算一個n位的行波進(jìn)位加法器的時間延遲。假如位的行波進(jìn)位加法器的時間延遲。假如采用圖采用圖2.2(a)所示的一位全加器并考慮溢出檢測,所示的一位全加器并考慮溢出檢測,那么那么n位行波進(jìn)位加法器的延遲時間位行波進(jìn)位加法器的延遲時間ta為為 tan2T9T(2n9)T (2.22) n9T為最低位上的兩極為最低位上的兩極“異或異或”門再加上溢出門再加上溢出“異或異或”門的總時間,門的總時間,2
19、T為每級進(jìn)位鏈的延遲時間。為每級進(jìn)位鏈的延遲時間。 2.2.4 基本的二進(jìn)制加法減法器(續(xù)(續(xù)2 2)n當(dāng)不考慮溢出檢測時,有當(dāng)不考慮溢出檢測時,有 ta(n-1) 2T9T(2.23) n ta意味著加法器的輸入端輸入加數(shù)和被加數(shù)后,意味著加法器的輸入端輸入加數(shù)和被加數(shù)后,在最壞情況下加法器輸出端得到穩(wěn)定的求和輸出所在最壞情況下加法器輸出端得到穩(wěn)定的求和輸出所需的最長時間。顯然這個時間越小越好。需的最長時間。顯然這個時間越小越好。n加數(shù)、被加數(shù)、進(jìn)位與和數(shù)都用電平表示,因此,加數(shù)、被加數(shù)、進(jìn)位與和數(shù)都用電平表示,因此,所謂穩(wěn)定的求和輸出,就是指穩(wěn)定的電平輸出。所謂穩(wěn)定的求和輸出,就是指穩(wěn)定的
20、電平輸出。十進(jìn)制加法器十進(jìn)制加法器例:設(shè)例:設(shè) Xi= 0110= (6)10 Yi= 0111= (7)10 則:則:Si = Xi+ Yi= 0110+0111 = 1101= (13)10 十位數(shù):十位數(shù):1 個位數(shù):個位數(shù): 3 對對Si(9)進(jìn)行進(jìn)行“加加6校正校正”后:后: Si = Si+6=1101+0110=1 0011 13 Si9的情況的情況:Si = 1010,1011,1100,1101,1110,1111. 當(dāng)當(dāng)Si9時,要求:時,要求: 產(chǎn)生向高位的進(jìn)位信號產(chǎn)生向高位的進(jìn)位信號Ci+1 ; 對對Si進(jìn)行進(jìn)行“+6”校正,得出本位的十進(jìn)制數(shù)值。校正,得出本位的十進(jìn)制
21、數(shù)值。實現(xiàn):實現(xiàn):(6)10 +(7)10 進(jìn)位進(jìn)位十進(jìn)制加法器十進(jìn)制加法器該位的和該位的和十進(jìn)制加法的校正十進(jìn)制加法的校正2.2.5 十進(jìn)制加法器2.2.5 十進(jìn)制加法器n十進(jìn)制加法器可由十進(jìn)制加法器可由BCD碼來設(shè)計,它可以在二碼來設(shè)計,它可以在二進(jìn)制加法器的基礎(chǔ)上加上適當(dāng)?shù)倪M(jìn)制加法器的基礎(chǔ)上加上適當(dāng)?shù)摹靶UU边壿嬤壿媮韺崿F(xiàn),該校正邏輯可將二進(jìn)制的來實現(xiàn),該校正邏輯可將二進(jìn)制的“和和”改變改變成所要求的十進(jìn)制格式。成所要求的十進(jìn)制格式。 nn 位位BCD碼行波式進(jìn)位加法器的一般結(jié)構(gòu)如圖碼行波式進(jìn)位加法器的一般結(jié)構(gòu)如圖2.3(a)所示,它由所示,它由n 級組成,每一級將一對級組成,每一級
22、將一對4位位的的BCD數(shù)字相加,并通過一位進(jìn)位線與其相鄰數(shù)字相加,并通過一位進(jìn)位線與其相鄰級連接。級連接。G1G2返回返回 和大于和大于9?和有進(jìn)位和有進(jìn)位校正:校正:Ci10時:時:+ +0; Ci11時:時:+ +6; Si3Si2Si1Si010 1 0 1 011 1 0 1 1 G1=Si3 Si112 1 1 0 013 1 1 0 1 G2=Si3 Si214 1 1 1 015 1 1 1 116 1 0 0 0 0 Ci12.2.5 十進(jìn)制加法器( (續(xù)續(xù)1 1)n十進(jìn)制相加二數(shù)之和大于十進(jìn)制相加二數(shù)之和大于9時,產(chǎn)生進(jìn)位。用時,產(chǎn)生進(jìn)位。用BCD碼運(yùn)算的碼運(yùn)算的和數(shù)大于和數(shù)
23、大于9時,必須對和數(shù)進(jìn)行加時,必須對和數(shù)進(jìn)行加6修正修正。n第一次近似求值時,就好像第一次近似求值時,就好像xi和和yi是普通是普通4位二進(jìn)制位二進(jìn)制數(shù)一樣。數(shù)一樣。n設(shè)設(shè)Si代表得到的代表得到的4位二進(jìn)制數(shù)和,位二進(jìn)制數(shù)和,Ci+1為輸出進(jìn)位,為輸出進(jìn)位,Si為正確的為正確的BCD和,和,Ci+1為正確的進(jìn)位為正確的進(jìn)位 當(dāng)當(dāng)xiyici10時,時, SiSi 當(dāng)當(dāng)xiyici 10時時, SiSi6n 當(dāng)當(dāng) 1或或 10時時,輸出進(jìn)位輸出進(jìn)位1 1。因此,可利用。因此,可利用 的狀態(tài)來產(chǎn)生所的狀態(tài)來產(chǎn)生所要求的校正因子要求的校正因子:n 1時校正因子為時校正因子為6n 0時校正因子為時校正
24、因子為0。n在圖在圖2.3(b)中,中,4位行波式進(jìn)位的二進(jìn)制加位行波式進(jìn)位的二進(jìn)制加法器計算出和法器計算出和 , 然后然后 經(jīng)過第二級二進(jìn)經(jīng)過第二級二進(jìn)制加法器加上制加法器加上0或或6,則產(chǎn)生最終結(jié)果,則產(chǎn)生最終結(jié)果 。1iC1iC1iC1iC1iCiSiSiSiS2.3 定點(diǎn)乘法運(yùn)算n2.3.1 原碼并行乘法n2.3.2 補(bǔ)碼并行乘法2.3.1 原碼并行乘法n在定點(diǎn)計算機(jī)中,在定點(diǎn)計算機(jī)中,兩個原碼表示的數(shù)相乘的運(yùn)算規(guī)則是:兩個原碼表示的數(shù)相乘的運(yùn)算規(guī)則是:乘乘積的符號位由兩數(shù)的符號位按異或運(yùn)算得到,而乘積的數(shù)值積的符號位由兩數(shù)的符號位按異或運(yùn)算得到,而乘積的數(shù)值部分則是兩個正數(shù)相乘之積。
25、部分則是兩個正數(shù)相乘之積。n設(shè)設(shè)n位被乘數(shù)和乘數(shù)用定點(diǎn)小數(shù)表示位被乘數(shù)和乘數(shù)用定點(diǎn)小數(shù)表示(定點(diǎn)整數(shù)也同樣適用定點(diǎn)整數(shù)也同樣適用) 被乘數(shù)被乘數(shù) xx原原 x xf f . x xn-1n-1x x1 1x x0 0 乘數(shù)乘數(shù) yy原原 y yf f . y yn-1n-1y y1 1y y0 0 n則乘積則乘積 zz原原(x xf f y yf f)(0. x xn-1n-1x x1 1x x0 0 )(0. y yn-1n-1y y1 1y y0 0) (2.26)被乘數(shù)符被乘數(shù)符號號 乘數(shù)符號乘數(shù)符號 1.人工算法與機(jī)器算法的同異性人工算法與機(jī)器算法的同異性2.3.1 原碼并行乘法(續(xù)(
26、續(xù)1 1)n乘積符號的運(yùn)算法則是乘積符號的運(yùn)算法則是:同號相乘為正,異號相:同號相乘為正,異號相乘為負(fù)。由于被乘數(shù)和乘數(shù)和符號組合只有四種乘為負(fù)。由于被乘數(shù)和乘數(shù)和符號組合只有四種情況情況( x xf f y yf f 00,01,10,11),因此積的符號可,因此積的符號可按按“異或異或”(按位加按位加)運(yùn)算得到。運(yùn)算得到。n數(shù)值部分的運(yùn)算方法與普通的十進(jìn)制小數(shù)乘法類數(shù)值部分的運(yùn)算方法與普通的十進(jìn)制小數(shù)乘法類似,不過對于用二進(jìn)制表達(dá)式的數(shù)來說,其乘法似,不過對于用二進(jìn)制表達(dá)式的數(shù)來說,其乘法規(guī)則更為簡單一些。規(guī)則更為簡單一些。2.3.1 原碼并行乘法(續(xù)(續(xù)2 2)二進(jìn)制乘法運(yùn)算:n 從乘數(shù)
27、從乘數(shù)的最低位開始,若這一位為的最低位開始,若這一位為“1”,則將,則將被乘數(shù)被乘數(shù)寫下;若為寫下;若為“0”,則寫下全,則寫下全0。然后在。然后在對乘數(shù)的高一位進(jìn)行乘法運(yùn)算,規(guī)則同上,但對乘數(shù)的高一位進(jìn)行乘法運(yùn)算,規(guī)則同上,但這一位乘數(shù)的權(quán)與最低位乘數(shù)的權(quán)不同,這一位乘數(shù)的權(quán)與最低位乘數(shù)的權(quán)不同,被乘被乘數(shù)數(shù)要左移一位。以此類推,直到乘數(shù)個位乘完要左移一位。以此類推,直到乘數(shù)個位乘完為止,最后將它們加起來,得到最后乘積為止,最后將它們加起來,得到最后乘積。n設(shè)設(shè)0.1101,0.1011。用習(xí)慣方法求其。用習(xí)慣方法求其乘積,過程。乘積,過程。 0. 1 1 0 1 (x) 0. 1 0 1
28、1 (y) 1 1 0 1 1 1 0 1 0 0 0 0+ 1 1 0 1 0. 1 0 0 0 1 1 1 1 (z)2.3.1 原碼并行乘法(續(xù)(續(xù)3 3)n人們習(xí)慣的算法對機(jī)器并不完全適用人們習(xí)慣的算法對機(jī)器并不完全適用原因之一原因之一,機(jī)器通常只,機(jī)器通常只有有n位長,兩個位長,兩個n位數(shù)相位數(shù)相乘,乘積可能為乘,乘積可能為2n位。位。原因之二原因之二,只有兩個操,只有兩個操作數(shù)相加的加法器難以作數(shù)相加的加法器難以勝任將勝任將n各位積一次各位積一次 相加起來的運(yùn)算。相加起來的運(yùn)算。早期計算機(jī)中為了簡化硬件結(jié)構(gòu),采用串行的早期計算機(jī)中為了簡化硬件結(jié)構(gòu),采用串行的1位乘法方案,即多次執(zhí)行
29、位乘法方案,即多次執(zhí)行“加法加法移位移位”操操作來實現(xiàn)。作來實現(xiàn)。這種方法并不需要很多器件。然而串行方法太這種方法并不需要很多器件。然而串行方法太慢,自從大規(guī)模集成電路問世以來,出現(xiàn)了各慢,自從大規(guī)模集成電路問世以來,出現(xiàn)了各種形式的流水式陣列乘法器,它們屬于并行乘種形式的流水式陣列乘法器,它們屬于并行乘法器法器。2.3.1 原碼并行乘法(續(xù)(續(xù)4 4)2. 2. 不帶符號的陣列乘法器不帶符號的陣列乘法器設(shè)有兩個不帶符號的二進(jìn)制整數(shù):設(shè)有兩個不帶符號的二進(jìn)制整數(shù):( (見書見書P38P38)A Aa am m1 1a a1 1a a0 0 (m(m位)位) B Bb bn n1 1b b1 1
30、b b0 0 (n n位)位) 它們的數(shù)值分別為它們的數(shù)值分別為a a和和b b, ,即即 m m1 1 n n1 1 A A a ai i 2 2i iB B b bj j 2 2j j i i0 0 j j0 0在二進(jìn)制乘法中在二進(jìn)制乘法中, ,被乘數(shù)被乘數(shù)A A與乘數(shù)與乘數(shù)B B相乘相乘, ,產(chǎn)生產(chǎn)生(m mn n)位乘積位乘積P P:P Pp pm mn n1 1p p1 1p p0 0 (m+nm+n位)位)乘積乘積P P 的數(shù)值為:的數(shù)值為: am-1 am-2 a1 a0 ) bn-1 b1 b0 am-1b0 am-2b0 a1b0 a0b0 am-1b1 am-2b1 a1b
31、1 a0b1 +) am-1bn-1 am-2bn-1 a1bn-1 a0bn-1 pm+n-1 pm+n-2 pm+n-3 pn-1 p1 p0 乘積乘積P P乘數(shù)乘數(shù)B B被乘數(shù)被乘數(shù)A A 上述過程給出了在上述過程給出了在m m位乘位乘n n位不帶符號整數(shù)的陣列乘法位不帶符號整數(shù)的陣列乘法中中,“,“加法加法移位移位”操作的被加數(shù)矩陣。每一個部分乘操作的被加數(shù)矩陣。每一個部分乘積項積項( (位積位積) )a ai ib bj j叫做一個被加數(shù)。叫做一個被加數(shù)。 這這m mn n個被加數(shù)個被加數(shù) a ai ib bj j|0|0i im m1 1和和00j jn n11可以用可以用m mn
32、 n個個“與與”門并行地產(chǎn)生。顯然門并行地產(chǎn)生。顯然, ,設(shè)計設(shè)計高速并行乘法器高速并行乘法器的基本問題的基本問題, ,就在于就在于縮短縮短被加數(shù)矩陣中每列所需的加法時間。被加數(shù)矩陣中每列所需的加法時間。 5位位5位陣列乘法器的邏輯電路圖演示位陣列乘法器的邏輯電路圖演示 原碼乘法運(yùn)算原碼乘法運(yùn)算 若乘法器為若乘法器為n位位n位時位時,需要需要n(n1)個個“全加器全加器”和和n2個個“與與”門。門。由由“與門與門”形成形成該值該值加法器加法器 原碼乘法運(yùn)算原碼乘法運(yùn)算 3T+3T2T3T+2T(n-2).6T(3T+Tf)(n-2).Tf3TTa 令令T Ta a為為“與門與門”的傳輸延遲時間
33、,的傳輸延遲時間,T Tf f為全加器為全加器(FA)(FA)的進(jìn)位傳輸延遲時間,假定用的進(jìn)位傳輸延遲時間,假定用2 2級級“與非與非”邏輯來實邏輯來實現(xiàn)現(xiàn)FAFA的進(jìn)位鏈功能和的進(jìn)位鏈功能和“與門與門”邏輯,那么就有:邏輯,那么就有: Ta Tf 2T 由上面的分析可以得出:最壞情況下的延遲途徑,由上面的分析可以得出:最壞情況下的延遲途徑,既是沿著矩陣既是沿著矩陣p p4 4垂直線和最下面的一行。因而得:垂直線和最下面的一行。因而得: n n位位n n位不帶符號的陣列乘法器總的乘法時間為:位不帶符號的陣列乘法器總的乘法時間為: tmTa+(n1) 6T (n1)Tf 2T(n1) 6T (n
34、1)2T (8n6) T(2.27)原碼乘法運(yùn)算原碼乘法運(yùn)算例例16 已知兩個不帶符號的二進(jìn)制整數(shù)已知兩個不帶符號的二進(jìn)制整數(shù) A 11011,B 10101,求每一部分乘積,求每一部分乘積項項aibj的值與的值與p9p8p0的值。的值。解解:原碼乘法運(yùn)算原碼乘法運(yùn)算 1 1 0 1 1 =A(2710) 1 0 1 0 1 = B(2110) 1 1 0 1 1 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0+ 1 1 0 1 1 1 0 0 0 1 1 0 1 1 1 =P(56710) a a4 4b b0 0=1 a=1 a3 3b b0 0=1 a=1 a2 2b b0
35、0=0 a=0 a1 1b b0 0=1 a=1 a0 0b b0 0=1=1 a a4 4b b1 1=0 a=0 a3 3b b1 1=0 a=0 a2 2b b1 1=0 a=0 a1 1b b1 1=0 a=0 a0 0b b1 1=0=0 a a4 4b b2 2=1 a=1 a3 3b b2 2=1 a=1 a2 2b b2 2=0 a=0 a1 1b b2 2=1 a=1 a0 0b b2 2=1=1 a a4 4b b3 3=0 a=0 a3 3b b3 3=0 a=0 a2 2b b3 3=0 a=0 a1 1b b3 3=0 a=0 a0 0b b3 3=0=0 a a4
36、4b b4 4=1 a=1 a3 3b b4 4=1 a=1 a2 2b b4 4=0 a=0 a1 1b b4 4=1 a=1 a0 0b b4 4=1=1 5位位5位陣列乘法器位陣列乘法器的邏輯電路圖演示的邏輯電路圖演示2.3.1 原碼并行乘法(續(xù)(續(xù)5 5)上述過程說明了在上述過程說明了在m位乘位乘n位不帶符號整數(shù)的陣列位不帶符號整數(shù)的陣列乘法中,乘法中,“加法加法移位移位”操作的被加數(shù)矩陣。每操作的被加數(shù)矩陣。每一個部分乘積項一個部分乘積項(位積位積) aibj叫做一個被加數(shù)。叫做一個被加數(shù)。這這mn個被加數(shù)個被加數(shù)aibj|0im1和和0jn1可以用可以用mn個個“與與”門并行地產(chǎn)生
37、。設(shè)計高速并門并行地產(chǎn)生。設(shè)計高速并行乘法器的基本問題在于縮短被加數(shù)矩陣中每列行乘法器的基本問題在于縮短被加數(shù)矩陣中每列所包含的所包含的1的加法時間。的加法時間。2.3.1 原碼并行乘法(續(xù)(續(xù)8 8)3. 帶符號的陣列乘法器帶符號的陣列乘法器一個負(fù)數(shù)的常規(guī)求補(bǔ)過程:一個負(fù)數(shù)的常規(guī)求補(bǔ)過程: 例:例: X=-1110 X=-1110, 則:則:XX補(bǔ)補(bǔ)=1 00=1 001010 ; Y=-0100Y=-0100, 則:則:YY補(bǔ)補(bǔ)=1 1=1 1100100 算法特點(diǎn)算法特點(diǎn):從數(shù)據(jù)的最右邊開始向左邊逐位看從數(shù)據(jù)的最右邊開始向左邊逐位看數(shù),找到第一個數(shù),找到第一個“1”1”為止。該為止。該“
38、1”1”的左邊各的左邊各位全部取反(不包括符號位);該位全部取反(不包括符號位);該“1”1”的右邊的右邊各位(包括該各位(包括該“1”1”)保持不變。)保持不變。帶符號的陣列乘法器帶符號的陣列乘法器 演示對演示對2求補(bǔ)電路的求補(bǔ)電路的工作過程工作過程3 2T3T+2T最長的信號最長的信號 延遲通路延遲通路所需的總時間延遲為:所需的總時間延遲為: tTC3 2T5T2.3.1 原碼并行乘法(續(xù)(續(xù)1010) 用這種對用這種對2求補(bǔ)器來轉(zhuǎn)換一個求補(bǔ)器來轉(zhuǎn)換一個(n1)為帶符號為帶符號的數(shù),所需的總時間延遲為:的數(shù),所需的總時間延遲為: t TCn2T5T(2n5)T(2.28) 其中每個掃描級需
39、其中每個掃描級需2T延遲,而延遲,而5T則是由于則是由于“與與”門和門和“異或異或”門引起的。門引起的。一個具有使能控制的二進(jìn)制對一個具有使能控制的二進(jìn)制對2求補(bǔ)器的邏輯表達(dá)式:求補(bǔ)器的邏輯表達(dá)式: C10, CiaiCi1 ai*aiECi1,0in2.3.1 原碼并行乘法(續(xù)(續(xù)1111) 帶符號的陣列乘法器帶符號的陣列乘法器 n 把包括這些求補(bǔ)級的乘法器又稱為把包括這些求補(bǔ)級的乘法器又稱為符號求補(bǔ)的陣符號求補(bǔ)的陣列乘法器列乘法器。n在這種邏輯結(jié)構(gòu)中,共使用在這種邏輯結(jié)構(gòu)中,共使用三個求補(bǔ)器三個求補(bǔ)器。n其中其中兩個算前求補(bǔ)器的作用是:兩個算前求補(bǔ)器的作用是:將兩個操作數(shù)將兩個操作數(shù)A和和
40、B在被不帶符號的乘法陣列在被不帶符號的乘法陣列(核心部件核心部件)相乘以前,相乘以前,先變成正整數(shù)。先變成正整數(shù)。n算后求補(bǔ)器的作用是算后求補(bǔ)器的作用是:當(dāng)兩個輸入操作數(shù)的符號:當(dāng)兩個輸入操作數(shù)的符號不一致時,把運(yùn)算結(jié)果變成帶符號的數(shù)。不一致時,把運(yùn)算結(jié)果變成帶符號的數(shù)。(2) 帶符號的陣列乘法器帶符號的陣列乘法器 方法:方法:兩個補(bǔ)碼相乘,符號位單獨(dú)處理,兩個補(bǔ)碼相乘,符號位單獨(dú)處理,絕對值使用不帶符號的陣列乘法器求乘積絕對值使用不帶符號的陣列乘法器求乘積的絕對值,然后根據(jù)乘積的符號位對乘積的絕對值,然后根據(jù)乘積的符號位對乘積的絕對值求補(bǔ),得出乘積的補(bǔ)碼。的絕對值求補(bǔ),得出乘積的補(bǔ)碼。 (n
41、1)(n1)位帶求補(bǔ)器的陣列乘位帶求補(bǔ)器的陣列乘法器邏輯法器邏輯方框圖方框圖。補(bǔ)碼補(bǔ)碼絕對值絕對值絕對值絕對值補(bǔ)碼補(bǔ)碼用符號位用符號位做控制求做控制求補(bǔ)信號補(bǔ)信號E2.3.1 原碼并行乘法(續(xù)(續(xù)1212)n設(shè)設(shè)A=anan-1a1a0和和B bnbn-1b1b0均為用定點(diǎn)表示的均為用定點(diǎn)表示的(n1)位帶符號整數(shù)。在必要的求補(bǔ)操作以后位帶符號整數(shù)。在必要的求補(bǔ)操作以后,A和和B的碼值輸?shù)拇a值輸送給送給nn位不帶符號的陣列乘法器位不帶符號的陣列乘法器,并由此產(chǎn)生并由此產(chǎn)生2n位真值乘位真值乘積積: ABP p2n-1 p1 p0 p2nan bn 其中其中p2n 為符號位。為符號位。所示的帶求
42、補(bǔ)級的陣列乘法器既適用于原碼乘法,所示的帶求補(bǔ)級的陣列乘法器既適用于原碼乘法,也適用于間接的補(bǔ)碼乘法。也適用于間接的補(bǔ)碼乘法。 在原碼乘法中,算前求補(bǔ)和算后求補(bǔ)都不需在原碼乘法中,算前求補(bǔ)和算后求補(bǔ)都不需要,因為輸入數(shù)據(jù)都是立即可用的。要,因為輸入數(shù)據(jù)都是立即可用的。 間接的補(bǔ)碼陣列乘法所需要增加的硬件較多。間接的補(bǔ)碼陣列乘法所需要增加的硬件較多。為了完成所必需的求補(bǔ)與乘法操作,時間大約比為了完成所必需的求補(bǔ)與乘法操作,時間大約比原碼陣列乘法增加原碼陣列乘法增加1倍。倍。2.3.1 原碼并行乘法(續(xù)(續(xù)1313)例例17:17:設(shè)設(shè)15,13,用帶求補(bǔ)器的,用帶求補(bǔ)器的原碼陣列乘法器求出乘積原
43、碼陣列乘法器求出乘積? 解:解: x=+15=(+1111)2, y=-13=(-1101)2, 最高位為符號位,其決定是否啟動求補(bǔ)器。最高位為符號位,其決定是否啟動求補(bǔ)器。解解:輸入數(shù)據(jù)為原碼,則算前、算后求補(bǔ)都不需要,輸入數(shù)據(jù)為原碼,則算前、算后求補(bǔ)都不需要,直接計算結(jié)果。直接計算結(jié)果。 原原 01111 原原 11101 符號位單獨(dú)考慮,算前無需求補(bǔ)級,直接取數(shù)值位:符號位單獨(dú)考慮,算前無需求補(bǔ)級,直接取數(shù)值位: |1111, |1101 經(jīng)由經(jīng)由無符號陣列乘法器:無符號陣列乘法器:(算式演示算式演示) 算后也無需求補(bǔ),直接輸出并加上乘積符號位算后也無需求補(bǔ),直接輸出并加上乘積符號位1,
44、則有:則有:x y原原 = 111000011。 換算成二進(jìn)制數(shù)真值是換算成二進(jìn)制數(shù)真值是: ( 11000011)2=(-195)10 十進(jìn)制數(shù)驗證:十進(jìn)制數(shù)驗證:y =15 (13) =-195 相等。相等。 1 1 1 1 (x=1510) 1 1 0 1 (y=1310) 1 1 1 1 0 0 0 0 1 1 1 1+ 1 1 1 1 1 1 0 0 0 0 1 1 (z=19510)例例18:18:設(shè)設(shè)+15,-13,用帶求補(bǔ)器的補(bǔ),用帶求補(bǔ)器的補(bǔ)碼陣列乘法器求出乘積碼陣列乘法器求出乘積? 解:解: x=+15=(+1111)2, y=-13=(-1101)2, 最高位為符號位,其
45、決定是否啟動求補(bǔ)器。最高位為符號位,其決定是否啟動求補(bǔ)器。輸入數(shù)據(jù)為補(bǔ)碼,則算前、算后求補(bǔ)都可能需要,輸入數(shù)據(jù)為補(bǔ)碼,則算前、算后求補(bǔ)都可能需要,由符號位決定是否啟動求補(bǔ)器。由符號位決定是否啟動求補(bǔ)器。 x補(bǔ)補(bǔ)=0 1111 ;(符號位為符號位為0,算前無需求補(bǔ),算前無需求補(bǔ)) y補(bǔ)補(bǔ)=1 0011 ;(符號位為符號位為1,算前需求補(bǔ),使,算前需求補(bǔ),使y的的數(shù)值變?yōu)檎龜?shù)數(shù)值變?yōu)檎龜?shù))幾點(diǎn)注釋幾點(diǎn)注釋 對對 y補(bǔ)補(bǔ)=10011 的數(shù)值部分的數(shù)值部分(0011)再求補(bǔ)一次,得:再求補(bǔ)一次,得:|y|=1101 無符號陣列乘法器輸出的結(jié)果仍然為:無符號陣列乘法器輸出的結(jié)果仍然為:11000011。
46、 x和和y的符號不一致,的符號不一致,結(jié)果的符號位為結(jié)果的符號位為“1” ,需,需啟動算后求補(bǔ)器,對結(jié)果求補(bǔ),最后得出:啟動算后求補(bǔ)器,對結(jié)果求補(bǔ),最后得出: xy補(bǔ)補(bǔ) =1 00111101 (真值真值= -195) 可見,求補(bǔ)的目的是:可見,求補(bǔ)的目的是: 數(shù)據(jù)送入無符號陣列乘法器之前,將參與運(yùn)算的數(shù)據(jù)送入無符號陣列乘法器之前,將參與運(yùn)算的補(bǔ)碼數(shù)據(jù)先轉(zhuǎn)換為數(shù)據(jù)的絕對值(補(bǔ)碼數(shù)據(jù)先轉(zhuǎn)換為數(shù)據(jù)的絕對值(由算前求補(bǔ)器由算前求補(bǔ)器完成完成) ; 乘積的符號位單獨(dú)形成(通過異或門);乘積的符號位單獨(dú)形成(通過異或門); 完成乘法運(yùn)算后,根據(jù)乘積的符號位將兩數(shù)絕對完成乘法運(yùn)算后,根據(jù)乘積的符號位將兩數(shù)
47、絕對值的乘積再轉(zhuǎn)換回補(bǔ)碼的形式,得出乘積的補(bǔ)碼值的乘積再轉(zhuǎn)換回補(bǔ)碼的形式,得出乘積的補(bǔ)碼(由算后求補(bǔ)器完成由算后求補(bǔ)器完成)。)。 由此可知:由此可知:這種這種帶求補(bǔ)器的陣列乘法器所完成帶求補(bǔ)器的陣列乘法器所完成的補(bǔ)碼乘法,實質(zhì)上屬于的補(bǔ)碼乘法,實質(zhì)上屬于間接的補(bǔ)碼乘法間接的補(bǔ)碼乘法。2.3.2 補(bǔ)碼并行乘法間接補(bǔ)碼乘法不屬于真正的補(bǔ)碼乘法,運(yùn)算效率受到影響。間接補(bǔ)碼乘法不屬于真正的補(bǔ)碼乘法,運(yùn)算效率受到影響。n如果補(bǔ)碼的符號位也直接參與到乘法運(yùn)算中如果補(bǔ)碼的符號位也直接參與到乘法運(yùn)算中, ,則則可以完成補(bǔ)碼的可以完成補(bǔ)碼的“直接直接”乘法。乘法。這種方法排除了這種方法排除了較慢的對較慢的對2
48、求補(bǔ)操作,求補(bǔ)操作,大大加速了乘法過程。大大加速了乘法過程。n與直接的補(bǔ)碼乘法相聯(lián)系數(shù)學(xué)特征。與直接的補(bǔ)碼乘法相聯(lián)系數(shù)學(xué)特征。對于計算補(bǔ)對于計算補(bǔ)碼數(shù)的數(shù)值來說,較好的表示方法是使補(bǔ)碼的位碼數(shù)的數(shù)值來說,較好的表示方法是使補(bǔ)碼的位置數(shù)有一個帶負(fù)權(quán)的符號和帶正權(quán)的系數(shù)。置數(shù)有一個帶負(fù)權(quán)的符號和帶正權(quán)的系數(shù)。1. 補(bǔ)碼與真值的轉(zhuǎn)換公式補(bǔ)碼與真值的轉(zhuǎn)換公式 2.3.2 補(bǔ)碼并行乘法( (續(xù)續(xù)1 1)例:例:定點(diǎn)整數(shù)的補(bǔ)碼定點(diǎn)整數(shù)的補(bǔ)碼N補(bǔ)補(bǔ)=an-1an-2a1a0= an-1是符號位。根據(jù)是符號位。根據(jù)N補(bǔ)補(bǔ)的符號,的符號,補(bǔ)碼數(shù)補(bǔ)碼數(shù)N補(bǔ)補(bǔ)和和真值真值N 的關(guān)系可以表示成:的關(guān)系可以表示成: a
49、i2iN=當(dāng)當(dāng)an1 0時時 (N 為正數(shù)為正數(shù))1 (1ai)2i n-2i=0當(dāng)當(dāng)an1 1時時 (N 為負(fù)數(shù)為負(fù)數(shù)) n-2i=00n-2位數(shù)值位位數(shù)值位逐位求反逐位求反末位加末位加1真值的絕對值真值的絕對值 n-1i=0ai2i根據(jù)補(bǔ)碼的性質(zhì)根據(jù)補(bǔ)碼的性質(zhì)4,整數(shù),整數(shù)N的補(bǔ)碼的形式:的補(bǔ)碼的形式: N補(bǔ)補(bǔ)= 2nan-1 + N an-1為符號,為符號, N為正時,為正時, an-1=0; N為負(fù)時,為負(fù)時, an-1=1?;蛘呋蛘?N也可以用也可以用N補(bǔ)補(bǔ)表示為:表示為: N = - 2nan-1 + N補(bǔ)補(bǔ)= - 2nan-1 = = -2nan-1+2n-1an-1 = = -
50、2n-1an-1+ a ai i2 2i i (2.292.29) n-2i=0 + n-1 i=0 ai2i + n-2 i=0 ai 2i因為當(dāng)因為當(dāng)N補(bǔ)補(bǔ)表示為表示為an1an2a1a0時,無論時,無論N為正還是為負(fù),則都有式子為正還是為負(fù),則都有式子2.29成立,即:成立,即: n-2i=0N= -N= -a an n1 12 2n n1 1 a ai i2 2i i-N補(bǔ)補(bǔ)an1an2a1a0+1式中式中ai=1- ai(對(對0in-1)。)。無論無論N為正還是為負(fù),為正還是為負(fù), N補(bǔ)補(bǔ)的機(jī)器負(fù)數(shù)的機(jī)器負(fù)數(shù)-N補(bǔ)補(bǔ)為:為:表達(dá)式表達(dá)式(2.29)和和(2.30)是等效的。是等效的
51、。 n-2i=0 N (1 an1)2n1 (1 ai)2i+1 (2.30)依式子依式子2.29此類推得式子此類推得式子2.30 : n-2i=0 N an12n1ai 2i+1 2.3.2 補(bǔ)碼并行乘法( (續(xù)續(xù)2 2)例例19 已知已知: N補(bǔ)補(bǔ) 01101,N補(bǔ)補(bǔ)10011,求求N補(bǔ)補(bǔ),N補(bǔ)補(bǔ)具有的數(shù)值。具有的數(shù)值。解解:N補(bǔ)補(bǔ)01101 具有的數(shù)值為:具有的數(shù)值為:N=-024+123+122+021+120=(+13)10 N補(bǔ)補(bǔ)10011 具有的數(shù)值為:具有的數(shù)值為:-N=-124+023+022+121+120=(-13)10按照式子按照式子2.30,求得:,求得:-N=-(1
52、-0)24+(1-1)23+(1-1)22+(1-0)21 +(1-1)20 +1 =(-13)10又例,又例, 已知已知: A補(bǔ)補(bǔ) 10110,B補(bǔ)補(bǔ)01011,求,求A和和B的值的值。解解:A補(bǔ)補(bǔ)10110 具有的數(shù)值為:具有的數(shù)值為:A124023122121020( 10)10 B補(bǔ)補(bǔ)01011 具有的數(shù)值為:具有的數(shù)值為:B024123022121120( 11)102.3.2 補(bǔ)碼并行乘法( (續(xù)續(xù)3 3) 常規(guī)的一位全加器可假定它的常規(guī)的一位全加器可假定它的3 3個輸入個輸入和和2 2個輸出都是正權(quán)。實際上,這種加法器個輸出都是正權(quán)。實際上,這種加法器既可以把正權(quán)加到輸入既可以把
53、正權(quán)加到輸入/ /輸出端、也可以把輸出端、也可以把負(fù)權(quán)加到輸入負(fù)權(quán)加到輸入/ /輸出端上。所以,可以歸納輸出端上。所以,可以歸納出四類加法單元。如出四類加法單元。如(表(表2.32.3),0 0類全加器類全加器沒有負(fù)權(quán)輸入;沒有負(fù)權(quán)輸入;1 1類全加器有類全加器有1 1個負(fù)權(quán)輸入和個負(fù)權(quán)輸入和2 2個正權(quán)輸入;依次類推。幾種加法器的輸個正權(quán)輸入;依次類推。幾種加法器的輸入輸出真值表:入輸出真值表:2.一般化的全加器形式一般化的全加器形式 0類加法器:類加法器:輸入、輸出都沒有負(fù)權(quán)。輸入、輸出都沒有負(fù)權(quán)。直接補(bǔ)碼并行乘法運(yùn)算直接補(bǔ)碼并行乘法運(yùn)算X Y Z S C 0 0 0 0 0 0 0 1
54、1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 S=X Y Z+X Y Z+X Y Z+XYZ= XYZC=X Y Z+X Y Z+X Y Z+X Y Z=XY+YZ+ZX1類加法器:類加法器:輸入有一個負(fù)權(quán)、輸出輸入有一個負(fù)權(quán)、輸出和和為負(fù)權(quán)。為負(fù)權(quán)。直接補(bǔ)碼并行乘法運(yùn)算直接補(bǔ)碼并行乘法運(yùn)算X Y Z S C 0 0 0 0 0 0 0 1 1 0 0 1 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 0 1 1 1 1 1 1 S=X Y Z+X Y Z+X Y Z+XYZ
55、= XYZC=X Y Z+X Y Z+X Y Z+X Y Z=XY+XZ+YZ2類加法器:類加法器:輸入有兩個負(fù)權(quán),輸出輸入有兩個負(fù)權(quán),輸出進(jìn)位進(jìn)位為負(fù)權(quán)。為負(fù)權(quán)。直接補(bǔ)碼并行乘法運(yùn)算直接補(bǔ)碼并行乘法運(yùn)算X Y Z S C 0 0 0 0 0 0 0 1 1 0 0 1 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 0 1 1 1 1 1 1 S=X Y Z+X Y Z+X Y Z+XYZ= XYZC=X Y Z+X Y Z+X Y Z+X Y Z=XY+XZ+YZ3類加法器:類加法器:三個輸入都為負(fù)權(quán),輸出三個輸入都為負(fù)權(quán),輸出進(jìn)位進(jìn)位、和和都為負(fù)權(quán)。都
56、為負(fù)權(quán)。 直接補(bǔ)碼并行乘法運(yùn)算直接補(bǔ)碼并行乘法運(yùn)算X Y Z S C 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 S=X Y Z+X Y Z+X Y Z+XYZ= XYZC=X Y Z+X Y Z+X Y Z+X Y Z=XY+YZ+ZX 總結(jié)總結(jié): 0類類全加器就是普通的一位全加器,而全加器就是普通的一位全加器,而3類類全加器可以用全加器可以用0類類全加器的邏輯方程來表征,它全加器的邏輯方程來表征,它和和(0類類)是一致的。這是因為是一致的。這是因為3類全加器可以簡單地類全加器
57、可以簡單地把把0類全加器的所有輸入輸出值全部反向來得到,類全加器的所有輸入輸出值全部反向來得到,反之亦然。反之亦然。 1類類和和2類類全加器之間也能建立類似的關(guān)系。全加器之間也能建立類似的關(guān)系。(由于邏輯表達(dá)式具有兩級(由于邏輯表達(dá)式具有兩級“與或與或”形式,可以用形式,可以用 “與或非與或非”門來實現(xiàn),延遲時間為門來實現(xiàn),延遲時間為2T。)。)直接補(bǔ)碼并行乘法運(yùn)算直接補(bǔ)碼并行乘法運(yùn)算2.3.2 補(bǔ)碼并行乘法( (續(xù)續(xù)5 5)n利用混合型的全加器就可以構(gòu)成直接補(bǔ)碼數(shù)陣列利用混合型的全加器就可以構(gòu)成直接補(bǔ)碼數(shù)陣列乘法器。設(shè)被乘數(shù)乘法器。設(shè)被乘數(shù)A和乘數(shù)和乘數(shù)B是兩個是兩個5位的二進(jìn)制位的二進(jìn)制補(bǔ)
58、碼數(shù)補(bǔ)碼數(shù),即即 A ( a4)a3a2a1a0 B (b4)b3 b2b1b0n它們具有帶負(fù)權(quán)的符號位它們具有帶負(fù)權(quán)的符號位a4和和b4 并用括號標(biāo)注。并用括號標(biāo)注。n如果我們用括號來標(biāo)注負(fù)的被加項,例如如果我們用括號來標(biāo)注負(fù)的被加項,例如(aibj),那么那么A和和B相乘過程中所包含的操作步驟如下面矩相乘過程中所包含的操作步驟如下面矩陣所示:陣所示:3.直接補(bǔ)碼陣列乘法器直接補(bǔ)碼陣列乘法器 2.3.2 補(bǔ)碼并行乘法( (續(xù)續(xù)6 6)(a4) a3 a2 a1a0 A ) (b4) b3 b2 b1 b0 B (a4b0) a3b0a1b0 a1b0a0b0 (a4b1) a3b1 a2b1
59、 a1b1 a0b1(a4b2)a3b2 a2b2 a1b2a0b2 (a4b3)a3b3 a2b3 a1b3 a0b3) a4b4 (a3b4) (a2b4) (a1b4) (a0b4) p9 p8 p7 p6 p5 p4 p3 p2 p1 p0 P 5位乘位乘5位的直接補(bǔ)碼陣列乘法器邏輯原理示于圖位的直接補(bǔ)碼陣列乘法器邏輯原理示于圖2.8,其中使用不同的邏輯符號來代表其中使用不同的邏輯符號來代表0類、類、1類、類、2類、類、3類類全加器。全加器。2類和類和1類全加器具有同樣的結(jié)構(gòu)類全加器具有同樣的結(jié)構(gòu),但是使用不但是使用不同的邏輯符號可使乘法陣列的線路圖容易理解。同的邏輯符號可使乘法陣列的
60、線路圖容易理解。直接補(bǔ)碼并行乘法運(yùn)算直接補(bǔ)碼并行乘法運(yùn)算a4b0a4b1a4b2a4b3a4b4a3b0a2b0a1b0a0b0a3b1a3b2a3b3a3b4a2b4a1b4a0b4a2b1a1b1a0b1a2b2a1b2a0b2a2b3a1b3a0b300000ai bjaibj0i40j42.4 定點(diǎn)除法運(yùn)算n2.4.1 原碼除法運(yùn)算原理n2.4.2 并行除法器 2.4.1 原碼除法運(yùn)算原理n兩個原碼數(shù)相除時,商的符號由兩數(shù)的符號按位相兩個原碼數(shù)相除時,商的符號由兩數(shù)的符號按位相加求得,商的數(shù)值部分由兩數(shù)的數(shù)值部分相除求得。加求得,商的數(shù)值部分由兩數(shù)的數(shù)值部分相除求得。 設(shè)有設(shè)有n位定點(diǎn)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城鄉(xiāng)結(jié)合部出租房屋合同定金范本
- 房產(chǎn)交易三方合同托管實施細(xì)則
- 保密條款合同模板:代理合作中的商業(yè)與技術(shù)秘密
- 廣告撲克牌批量生產(chǎn)合同
- 貸款擔(dān)保合同協(xié)議
- 河南標(biāo)準(zhǔn)個人借款合同樣本規(guī)范
- 度商業(yè)合同范本:經(jīng)濟(jì)適用房交易
- 股權(quán)轉(zhuǎn)讓合同范本(標(biāo)準(zhǔn)文本)
- 采購供應(yīng)合同書其二
- 與營銷策略的區(qū)別與應(yīng)用考核試卷
- 2025年江蘇南京技師學(xué)院招聘工作人員19人高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- 華東師大版七年級數(shù)學(xué)下冊“第1周周考”
- DBJ50-T-385-2023半柔性復(fù)合路面技術(shù)標(biāo)準(zhǔn)
- 職業(yè)院校教師人工智能素養(yǎng):內(nèi)涵流變、框架構(gòu)建與生成路徑
- 如何在初中數(shù)學(xué)教學(xué)中提升學(xué)生的核心素養(yǎng)
- (完整版)小學(xué)一年級數(shù)學(xué)20以內(nèi)進(jìn)退位加減法(1600道題)計算卡
- 2025年包頭鐵道職業(yè)技術(shù)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- 北京2024年北京市測繪設(shè)計研究院面向應(yīng)屆生招聘筆試歷年參考題庫附帶答案詳解
- 2025年減速機(jī)齒輪項目投資可行性研究分析報告
- 走進(jìn)李白校本 課程設(shè)計
- 2025新人教版英語七年級下單詞默寫單(小學(xué)部分)
評論
0/150
提交評論