




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、西華師范大學(xué)西華師范大學(xué)1西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)2 運(yùn)算器是計(jì)算機(jī)進(jìn)行算術(shù)運(yùn)算和邏運(yùn)算器是計(jì)算機(jī)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算的主要部件,運(yùn)算器的邏輯結(jié)構(gòu)輯運(yùn)算的主要部件,運(yùn)算器的邏輯結(jié)構(gòu)取決于機(jī)器的指令系統(tǒng)、數(shù)據(jù)表示方法取決于機(jī)器的指令系統(tǒng)、數(shù)據(jù)表示方法和運(yùn)算方法等。本章主要討論數(shù)值數(shù)據(jù)和運(yùn)算方法等。本章主要討論數(shù)值數(shù)據(jù)在計(jì)算機(jī)中實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算的在計(jì)算機(jī)中實(shí)現(xiàn)算術(shù)運(yùn)算和邏輯運(yùn)算的方法,以及運(yùn)算部件的基本結(jié)構(gòu)和工作方法,以及運(yùn)算部件的基本結(jié)構(gòu)和工作原理。原理。 西華師范大學(xué)西華師范大學(xué)運(yùn)算器的設(shè)計(jì)方法運(yùn)算器的設(shè)計(jì)方法 作為計(jì)算機(jī)的核心部件作為計(jì)算機(jī)的核心部件運(yùn)算器,它
2、所運(yùn)算器,它所具有的只是簡(jiǎn)單的算術(shù)、邏輯運(yùn)算以及移具有的只是簡(jiǎn)單的算術(shù)、邏輯運(yùn)算以及移位、計(jì)數(shù)等功能,因此計(jì)算機(jī)中對(duì)數(shù)據(jù)信位、計(jì)數(shù)等功能,因此計(jì)算機(jī)中對(duì)數(shù)據(jù)信息的加工的基本思想就是:將各種復(fù)雜的息的加工的基本思想就是:將各種復(fù)雜的運(yùn)算處理分解為最基本的算術(shù)運(yùn)算和邏輯運(yùn)算處理分解為最基本的算術(shù)運(yùn)算和邏輯運(yùn)算。運(yùn)算。 2021-12-103西華師范大學(xué)西華師范大學(xué) ( (1) ) 如何構(gòu)成一位全加器。如何構(gòu)成一位全加器。(2)將)將N個(gè)一位全加器通過(guò)加法進(jìn)位鏈連接構(gòu)成個(gè)一位全加器通過(guò)加法進(jìn)位鏈連接構(gòu)成N位并行位并行加法器;加法器;(3)將加法器擴(kuò)展為多功能的算術(shù))將加法器擴(kuò)展為多功能的算術(shù)/邏輯運(yùn)
3、算部件;邏輯運(yùn)算部件;(4)將加法器與移位器組合,構(gòu)成定點(diǎn)乘法器與除法器)將加法器與移位器組合,構(gòu)成定點(diǎn)乘法器與除法器。將計(jì)算定點(diǎn)整數(shù)的階碼運(yùn)算器和計(jì)算定點(diǎn)小數(shù)的尾數(shù)。將計(jì)算定點(diǎn)整數(shù)的階碼運(yùn)算器和計(jì)算定點(diǎn)小數(shù)的尾數(shù)運(yùn)算器組合構(gòu)成浮點(diǎn)運(yùn)算器;運(yùn)算器組合構(gòu)成浮點(diǎn)運(yùn)算器;(5)在算術(shù))在算術(shù)/邏輯運(yùn)算部件的基礎(chǔ)上,配合各類(lèi)相關(guān)的寄邏輯運(yùn)算部件的基礎(chǔ)上,配合各類(lèi)相關(guān)的寄存器,構(gòu)成計(jì)算機(jī)中的運(yùn)算器。存器,構(gòu)成計(jì)算機(jī)中的運(yùn)算器。2021-12-10運(yùn)算器的邏輯組織結(jié)構(gòu)設(shè)計(jì)分為以下層次:運(yùn)算器的邏輯組織結(jié)構(gòu)設(shè)計(jì)分為以下層次:西華師范大學(xué)西華師范大學(xué)本章學(xué)習(xí)內(nèi)容本章學(xué)習(xí)內(nèi)容4.1 基本算術(shù)運(yùn)算的實(shí)現(xiàn)基本算術(shù)運(yùn)
4、算的實(shí)現(xiàn)4.2 定點(diǎn)加減運(yùn)算定點(diǎn)加減運(yùn)算4.3 帶符號(hào)數(shù)的移位和舍入操作帶符號(hào)數(shù)的移位和舍入操作4.4 定點(diǎn)乘法運(yùn)算定點(diǎn)乘法運(yùn)算4.5 定點(diǎn)除法運(yùn)算定點(diǎn)除法運(yùn)算4.6 規(guī)格化浮點(diǎn)運(yùn)算規(guī)格化浮點(diǎn)運(yùn)算4.7 十進(jìn)制整數(shù)的加法運(yùn)算十進(jìn)制整數(shù)的加法運(yùn)算4.8 邏輯運(yùn)算與實(shí)現(xiàn)邏輯運(yùn)算與實(shí)現(xiàn)4.9 運(yùn)算器的基本組成與實(shí)例運(yùn)算器的基本組成與實(shí)例5西華師范大學(xué)西華師范大學(xué)本章學(xué)習(xí)要求本章學(xué)習(xí)要求掌握:定點(diǎn)補(bǔ)碼加法和減法運(yùn)算方法掌握:定點(diǎn)補(bǔ)碼加法和減法運(yùn)算方法理解:理解:3 3種溢出檢測(cè)方法種溢出檢測(cè)方法理解理解:補(bǔ)碼移位運(yùn)算和常見(jiàn)的舍入操作方法:補(bǔ)碼移位運(yùn)算和常見(jiàn)的舍入操作方法了解了解:串行加法器與并行加法器
5、串行加法器與并行加法器理解理解:進(jìn)位產(chǎn)生和進(jìn)位傳遞進(jìn)位產(chǎn)生和進(jìn)位傳遞掌握:定點(diǎn)原碼、補(bǔ)碼乘法運(yùn)算方法掌握:定點(diǎn)原碼、補(bǔ)碼乘法運(yùn)算方法掌握:定點(diǎn)原碼、補(bǔ)碼加減交替除法運(yùn)算方法掌握:定點(diǎn)原碼、補(bǔ)碼加減交替除法運(yùn)算方法理解:浮點(diǎn)加減乘除運(yùn)算理解:浮點(diǎn)加減乘除運(yùn)算理解:邏輯運(yùn)算理解:邏輯運(yùn)算了解:運(yùn)算器的基本結(jié)構(gòu)及浮點(diǎn)協(xié)處理器了解:運(yùn)算器的基本結(jié)構(gòu)及浮點(diǎn)協(xié)處理器6西華師范大學(xué)西華師范大學(xué)4.1 基本算術(shù)運(yùn)算的實(shí)現(xiàn)基本算術(shù)運(yùn)算的實(shí)現(xiàn) 計(jì)算機(jī)中最基本的算術(shù)運(yùn)算是加法運(yùn)計(jì)算機(jī)中最基本的算術(shù)運(yùn)算是加法運(yùn)算,不論加、減、乘、除運(yùn)算最終都可算,不論加、減、乘、除運(yùn)算最終都可以歸結(jié)為加法運(yùn)算。所以在此討論最基以歸結(jié)
6、為加法運(yùn)算。所以在此討論最基本的運(yùn)算部件本的運(yùn)算部件加法器,以及并行加加法器,以及并行加法器的進(jìn)位問(wèn)題。法器的進(jìn)位問(wèn)題。7西華師范大學(xué)西華師范大學(xué)4.1.1 加法器加法器 1.全加器全加器 全加器(全加器(FA)是最基本的加法單元是最基本的加法單元,它有三個(gè)輸入量:操作數(shù),它有三個(gè)輸入量:操作數(shù)Ai和和Bi、低位低位傳來(lái)的進(jìn)位傳來(lái)的進(jìn)位Ci-1,兩個(gè)輸出量:本位和兩個(gè)輸出量:本位和Si、向高位的進(jìn)位向高位的進(jìn)位Ci。 圖圖4-1 全加器的邏輯框圖全加器的邏輯框圖 8FAAiBiSiCiCi-1西華師范大學(xué)西華師范大學(xué)全加器真值表全加器真值表9AiBiCi-1SiCi00001111001100
7、11010101010110100100010111西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)10 根據(jù)真值表,可得到全加器的邏輯表達(dá)式為:根據(jù)真值表,可得到全加器的邏輯表達(dá)式為: Si=Ai Bi Ci-1 Ci=AiBi+(Ai Bi)Ci-1全加器的邏輯表達(dá)式全加器的邏輯表達(dá)式西華師范大學(xué)西華師范大學(xué)2.串行加法器與并行加法器串行加法器與并行加法器 加法器有串行和并行之分。在串行加法器有串行和并行之分。在串行加法器中,只有一個(gè)全加器,數(shù)據(jù)逐位加法器中,只有一個(gè)全加器,數(shù)據(jù)逐位串行送入加法器進(jìn)行運(yùn)算;并行加法器串行送入加法器進(jìn)行運(yùn)算;并行加法器則由多個(gè)全加器組成,其位數(shù)的多少取則由多
8、個(gè)全加器組成,其位數(shù)的多少取決于機(jī)器的字長(zhǎng),數(shù)據(jù)的各位同時(shí)運(yùn)算。決于機(jī)器的字長(zhǎng),數(shù)據(jù)的各位同時(shí)運(yùn)算。11西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)12 串行加法器器件少、成本低,但運(yùn)算速度慢,串行加法器器件少、成本低,但運(yùn)算速度慢, 并行加并行加法器同法器同時(shí)對(duì)數(shù)據(jù)的各位相加,主要解決時(shí)對(duì)數(shù)據(jù)的各位相加,主要解決加法的最長(zhǎng)運(yùn)算時(shí)間問(wèn)題。雖然操作數(shù)的各位是同加法的最長(zhǎng)運(yùn)算時(shí)間問(wèn)題。雖然操作數(shù)的各位是同時(shí)提供的,但低位運(yùn)算所產(chǎn)生的進(jìn)位會(huì)影響高位的時(shí)提供的,但低位運(yùn)算所產(chǎn)生的進(jìn)位會(huì)影響高位的運(yùn)算結(jié)果。運(yùn)算結(jié)果。 例如:例如:11111111和和00000101相加,最低位產(chǎn)生的進(jìn)位將相加,最低
9、位產(chǎn)生的進(jìn)位將逐位影響至最高位,逐位影響至最高位, 并行加法器的最長(zhǎng)運(yùn)算時(shí)間主要是由進(jìn)位信號(hào)并行加法器的最長(zhǎng)運(yùn)算時(shí)間主要是由進(jìn)位信號(hào)的傳遞時(shí)間決定的,而每個(gè)全加器本身的求和延遲的傳遞時(shí)間決定的,而每個(gè)全加器本身的求和延遲只是次要因素。只是次要因素。 提提高并行加法器速度的關(guān)鍵是盡量加快進(jìn)位產(chǎn)生和高并行加法器速度的關(guān)鍵是盡量加快進(jìn)位產(chǎn)生和傳遞的速度。傳遞的速度。2.串行加法器與并行加法器串行加法器與并行加法器西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)13 并行加法器中的每一個(gè)全加器都有一個(gè)從并行加法器中的每一個(gè)全加器都有一個(gè)從低位送來(lái)的進(jìn)位輸入和一個(gè)傳送給高位的進(jìn)位低位送來(lái)的進(jìn)位輸入和一個(gè)
10、傳送給高位的進(jìn)位輸輸出。傳出。傳遞進(jìn)位信號(hào)的邏輯線路連接起來(lái)構(gòu)成遞進(jìn)位信號(hào)的邏輯線路連接起來(lái)構(gòu)成的進(jìn)位網(wǎng)絡(luò)稱(chēng)為進(jìn)位的進(jìn)位網(wǎng)絡(luò)稱(chēng)為進(jìn)位鏈。鏈。 每每一位的進(jìn)位表達(dá)式為:一位的進(jìn)位表達(dá)式為: Ci=AiBi+(Ai Bi)Ci-1 其其中:中:Gi=AiBi為進(jìn)位產(chǎn)生函數(shù)為進(jìn)位產(chǎn)生函數(shù) Pi=Ai Bi為進(jìn)位傳遞函數(shù)為進(jìn)位傳遞函數(shù) 進(jìn)位表達(dá)式進(jìn)位表達(dá)式Ci=Gi+PiCi-1 4.1.2 進(jìn)位的產(chǎn)生和傳遞進(jìn)位的產(chǎn)生和傳遞西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)14圖圖4-3 串行進(jìn)位的并行加法器串行進(jìn)位的并行加法器其中:其中:C1=G1+P1C0 C2=G2+P2C1 Cn=Gn+PnCn
11、-1 串行進(jìn)位的并行加法器串行進(jìn)位的并行加法器 FAFAFAC1C2Cn-1CnA1B1A2B2AnBnS1S2SnC0西華師范大學(xué)西華師范大學(xué) 串行進(jìn)位的并行加法器的總延遲時(shí)間串行進(jìn)位的并行加法器的總延遲時(shí)間與字長(zhǎng)成正比,字長(zhǎng)越長(zhǎng),總延遲時(shí)間與字長(zhǎng)成正比,字長(zhǎng)越長(zhǎng),總延遲時(shí)間就越就越長(zhǎng)。長(zhǎng)。 若一若一級(jí)級(jí)“與門(mén)與門(mén)”、“或門(mén)或門(mén)”的延遲的延遲時(shí)間為時(shí)間為tyty,每每一級(jí)全加器的進(jìn)位延遲時(shí)間為一級(jí)全加器的進(jìn)位延遲時(shí)間為2 2tyty。 在在字長(zhǎng)為字長(zhǎng)為n n位的情況位的情況下,不下,不考慮考慮G Gi i、P Pi i的形成時(shí)的形成時(shí)間,從間,從C C0 0CCn n的最長(zhǎng)延遲時(shí)間為的最長(zhǎng)延
12、遲時(shí)間為2 2ntynty。15西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)161 1. .并行進(jìn)位方式并行進(jìn)位方式 并行進(jìn)位又叫先行進(jìn)位、同時(shí)進(jìn)位,其并行進(jìn)位又叫先行進(jìn)位、同時(shí)進(jìn)位,其特點(diǎn)是各級(jí)進(jìn)位信號(hào)同時(shí)形成。特點(diǎn)是各級(jí)進(jìn)位信號(hào)同時(shí)形成。 C1=G1+P1C0 C2=G2+P2C1=G2+P2G1+P2P1C0 C3=G3+P3C2=G3+P3G2+P3P2G1+P3P2P1C0 C4=G4+P4C3=G4+P4G3+P4P3G2+P4P3P2G1 +P4P3P2P1C0 4.1.3 并行加法器的快速進(jìn)位并行加法器的快速進(jìn)位 西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)17 這種進(jìn)
13、位方式是快速的,若不考慮這種進(jìn)位方式是快速的,若不考慮G Gi i、P Pi i的形成時(shí)間,從的形成時(shí)間,從C C0 0CCn n的最長(zhǎng)延遲時(shí)的最長(zhǎng)延遲時(shí)間僅為間僅為2 2tyty,而與字長(zhǎng)無(wú)關(guān)。但是隨著加而與字長(zhǎng)無(wú)關(guān)。但是隨著加法器位數(shù)的增加,法器位數(shù)的增加,C Ci i的邏輯表達(dá)式會(huì)變得的邏輯表達(dá)式會(huì)變得越來(lái)越長(zhǎng),輸入變量會(huì)越來(lái)越多,這會(huì)越來(lái)越長(zhǎng),輸入變量會(huì)越來(lái)越多,這會(huì)使電路結(jié)構(gòu)變得很復(fù)雜,所以完全采用使電路結(jié)構(gòu)變得很復(fù)雜,所以完全采用并行進(jìn)位是不現(xiàn)實(shí)的。并行進(jìn)位是不現(xiàn)實(shí)的。 1.1.并行進(jìn)位方式(續(xù))并行進(jìn)位方式(續(xù))西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)18 單級(jí)先行進(jìn)位方
14、式(組內(nèi)并行、組間串行)單級(jí)先行進(jìn)位方式(組內(nèi)并行、組間串行) 以以1616位加法器為例,可分為位加法器為例,可分為4 4組,每組組,每組4 4位。第一小組組內(nèi)的進(jìn)位邏輯函數(shù)位。第一小組組內(nèi)的進(jìn)位邏輯函數(shù)C C1 1、C C2 2、C C3 3、C C4 4的表達(dá)式與前述相同,它們是同時(shí)產(chǎn)生的,的表達(dá)式與前述相同,它們是同時(shí)產(chǎn)生的,實(shí)現(xiàn)上述進(jìn)位邏輯函數(shù)的電路稱(chēng)之為實(shí)現(xiàn)上述進(jìn)位邏輯函數(shù)的電路稱(chēng)之為4 4位先行位先行進(jìn)位電路進(jìn)位電路CLACLA,其延遲時(shí)間是其延遲時(shí)間是2 2tyty。 利用這種利用這種4 4位的位的CLACLA電路以及進(jìn)位產(chǎn)生電路以及進(jìn)位產(chǎn)生/ /傳傳遞電路和求和電路可以構(gòu)成遞電
15、路和求和電路可以構(gòu)成4 4位的位的CLACLA加法器。加法器。用用4 4個(gè)這樣的個(gè)這樣的CLACLA加法器,很容易構(gòu)成加法器,很容易構(gòu)成1616位的單位的單級(jí)先行進(jìn)位加法器。級(jí)先行進(jìn)位加法器。 2.2.分組并行進(jìn)位方式分組并行進(jìn)位方式西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)1916位單級(jí)先行進(jìn)位加法器圖圖4-4 16位單級(jí)先行進(jìn)位加法器位單級(jí)先行進(jìn)位加法器4位CLA加法器4位CLA加法器4位CLA加法器4位CLA加法器A4A1A8A5A12A9A16A13B4B1B8B5B12B9B16B13S4S1S8S5S12S9S16S13C4C8C12C16C0西華師范大學(xué)西華師范大學(xué)16位單
16、級(jí)先行進(jìn)位時(shí)間圖圖圖4-5 16位單級(jí)先行進(jìn)位時(shí)間圖位單級(jí)先行進(jìn)位時(shí)間圖202468tyCiC0C1C4C8C12C16西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)21 多級(jí)先行進(jìn)位方式(組內(nèi)并行、組間并行)多級(jí)先行進(jìn)位方式(組內(nèi)并行、組間并行) 仍以字長(zhǎng)為仍以字長(zhǎng)為1616位的加法器作為例子,分析位的加法器作為例子,分析兩級(jí)先行進(jìn)位加法器的設(shè)計(jì)方法。第一小組的兩級(jí)先行進(jìn)位加法器的設(shè)計(jì)方法。第一小組的進(jìn)位輸出進(jìn)位輸出C C4 4可以變成兩個(gè)與項(xiàng)相或:可以變成兩個(gè)與項(xiàng)相或: C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0 =G1*+P1*C0 其中:其中:G1*=
17、G4+P4G3+P4P3G2+P4P3P2G1 P1*=P4P3P2P1 Gi*稱(chēng)為組進(jìn)位產(chǎn)生函數(shù)稱(chēng)為組進(jìn)位產(chǎn)生函數(shù) Pi*稱(chēng)為組進(jìn)位傳遞函數(shù)稱(chēng)為組進(jìn)位傳遞函數(shù)2.2.分組并行進(jìn)位方式(續(xù))分組并行進(jìn)位方式(續(xù))西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)22依次類(lèi)推,可以得到:依次類(lèi)推,可以得到: C8=G2*+P2*C4=G2*+P2*G1*+P2*P1*C0 C12=G3*+P3*G2+P3*P2*G1*+P3*P2*P1*C0 C16=G4*+P4*G3*+P4*P3*G2*+P4*P3*P2*G1* +P4*P3*P2*P1*C0西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)2
18、3 成組先行進(jìn)位電路成組先行進(jìn)位電路BCLABCLA,其延遲時(shí)間其延遲時(shí)間是是2 2tyty。利用這種利用這種4 4位的位的BCLABCLA電路以及進(jìn)位電路以及進(jìn)位產(chǎn)生產(chǎn)生/ /傳遞電路和求和電路可以構(gòu)成傳遞電路和求和電路可以構(gòu)成4 4位的位的BCLABCLA加法器。加法器。1616位的兩級(jí)先行進(jìn)位加法器位的兩級(jí)先行進(jìn)位加法器可由可由4 4個(gè)個(gè)BCLABCLA加法器和加法器和1 1個(gè)個(gè)CLACLA電路組成。電路組成。 西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)2416位兩級(jí)先行進(jìn)位加法器圖圖4-6 16位兩級(jí)先行進(jìn)位加法器位兩級(jí)先行進(jìn)位加法器CLA電路BCLA加法器BCLA加法器BCLA
19、加法器BCLA加法器A4A1A8A5A12A9A16A13B16B13B12B9B8B5B4B1S4S1S8S5S12S9S16S13C0C16.P2P1P3P4G1G2G3G4C4C8C12*西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)25 若不考慮若不考慮G Gi i、P Pi i的形成時(shí)間,的形成時(shí)間,C C0 0經(jīng)過(guò)經(jīng)過(guò)2 2tyty產(chǎn)生第一小組的產(chǎn)生第一小組的C C1 1、C C2 2、C C3 3及所有組進(jìn)及所有組進(jìn)位產(chǎn)生函數(shù)位產(chǎn)生函數(shù)G Gi i* *和組進(jìn)位傳遞函數(shù)和組進(jìn)位傳遞函數(shù)P Pi i* *;再再經(jīng)過(guò)經(jīng)過(guò)2 2tyty,由由CLACLA電路產(chǎn)生電路產(chǎn)生C C4 4、
20、C C8 8、C C1212、C C1616;再經(jīng)過(guò)再經(jīng)過(guò)2 2tyty后,才能產(chǎn)生第二、三、四小后,才能產(chǎn)生第二、三、四小組內(nèi)的組內(nèi)的C C5 5C C7 7、C C9 9C C1111、C C1313C C1515。此時(shí)加此時(shí)加法器的最長(zhǎng)進(jìn)位延遲時(shí)間是法器的最長(zhǎng)進(jìn)位延遲時(shí)間是6 6tyty。 2.分組并行進(jìn)位方式(續(xù))分組并行進(jìn)位方式(續(xù))西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)2616位兩級(jí)先行進(jìn)位時(shí)間圖位兩級(jí)先行進(jìn)位時(shí)間圖圖圖4-7 16位兩級(jí)先行進(jìn)位時(shí)間圖位兩級(jí)先行進(jìn)位時(shí)間圖246tyCiC0C1C4C8C12C16*西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)27 定點(diǎn)
21、數(shù)的加減運(yùn)算包括原碼、補(bǔ)碼定點(diǎn)數(shù)的加減運(yùn)算包括原碼、補(bǔ)碼和反碼和反碼3 3種帶符號(hào)數(shù)的加減運(yùn)算,其中補(bǔ)種帶符號(hào)數(shù)的加減運(yùn)算,其中補(bǔ)碼加減運(yùn)算實(shí)現(xiàn)起來(lái)最方便。碼加減運(yùn)算實(shí)現(xiàn)起來(lái)最方便。4.2 定點(diǎn)加減運(yùn)算定點(diǎn)加減運(yùn)算西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)28原碼加減運(yùn)算規(guī)則:原碼加減運(yùn)算規(guī)則: 參加運(yùn)算的操作數(shù)取其絕對(duì)值;參加運(yùn)算的操作數(shù)取其絕對(duì)值; 若做加法,則兩數(shù)直接相加,若做減法,則若做加法,則兩數(shù)直接相加,若做減法,則將減數(shù)先變一次補(bǔ),再進(jìn)行加法運(yùn)算;將減數(shù)先變一次補(bǔ),再進(jìn)行加法運(yùn)算; 運(yùn)算之后,可能有兩種情況:運(yùn)算之后,可能有兩種情況: 有進(jìn)位,結(jié)果為正,即得到正確的結(jié)果。有
22、進(jìn)位,結(jié)果為正,即得到正確的結(jié)果。 無(wú)進(jìn)位,結(jié)果為負(fù),則應(yīng)再變一次補(bǔ),才無(wú)進(jìn)位,結(jié)果為負(fù),則應(yīng)再變一次補(bǔ),才能得到正確的結(jié)果。能得到正確的結(jié)果。 結(jié)果加上符號(hào)位。結(jié)果加上符號(hào)位。 通常,把運(yùn)算之前的變補(bǔ)稱(chēng)為前變補(bǔ),運(yùn)算之通常,把運(yùn)算之前的變補(bǔ)稱(chēng)為前變補(bǔ),運(yùn)算之后的變補(bǔ)稱(chēng)為后變補(bǔ)。后的變補(bǔ)稱(chēng)為后變補(bǔ)。 4.2.1 原碼加減運(yùn)算原碼加減運(yùn)算 西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué) ( X + Y )補(bǔ) = X補(bǔ) + Y補(bǔ) (1) ( X - Y )補(bǔ) = X補(bǔ) + (-Y)補(bǔ) (2)4.2.2 補(bǔ)碼加減運(yùn)算補(bǔ)碼加減運(yùn)算 根據(jù)補(bǔ)碼加法公式可推出:根據(jù)補(bǔ)碼加法公式可推出: X-YX-Y補(bǔ)補(bǔ)=
23、X+(-Y)X+(-Y)補(bǔ)補(bǔ)=XX補(bǔ)補(bǔ)+-+-YY補(bǔ)補(bǔ) 西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)式(1):操作碼為“加”時(shí),兩數(shù)直接相加。3) X= 3 Y= 2 X補(bǔ)=0 0011 Y補(bǔ)=1 11100 0001(+1補(bǔ)碼)2) X= 3 Y= 2 X補(bǔ)=1 1101 Y補(bǔ)=1 11101 1011( 5補(bǔ)碼)1) X=3 Y=2 X補(bǔ)=0 0011 Y補(bǔ)=0 00100 0101(+5補(bǔ)碼)4) X= 3 Y= 2 X補(bǔ)=1 1101 Y補(bǔ)=0 00101 1111(1補(bǔ)碼)例. 求(X+Y)補(bǔ)( X + Y )補(bǔ)補(bǔ) = X補(bǔ)補(bǔ) + Y補(bǔ)補(bǔ) (1)西華師范大學(xué)西華師范大學(xué)西華師范大
24、學(xué)西華師范大學(xué)2021-12-1031 ( X - Y )補(bǔ)補(bǔ) = X補(bǔ)補(bǔ) + (-Y)補(bǔ)補(bǔ) (2)式(2):操作碼為“減”時(shí),將減轉(zhuǎn)換為加。 Y補(bǔ) (Y)補(bǔ):將Y補(bǔ)變補(bǔ)不管Y補(bǔ)為正或負(fù),將其符號(hào)連同尾數(shù)一起各位變反,末位加1。即將減數(shù)變補(bǔ)后與被減數(shù)相加。西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)32例例3:A=0.1011,B=-0.1110,求求A+B A補(bǔ)補(bǔ)=0.1011 B補(bǔ)補(bǔ)=1.0010 0.1011 A補(bǔ)補(bǔ) + 1.0010 B補(bǔ)補(bǔ) 1.1101 A+B補(bǔ)補(bǔ) A+B補(bǔ)補(bǔ)=1.1101 A+B=-0.0011示例示例西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)33例例4:
25、A=0.1011,B=-0.0010,求求A-B A補(bǔ)補(bǔ)=0.1011 B補(bǔ)補(bǔ)=1.1110 -B補(bǔ)補(bǔ)=0.0010 0.1011 A補(bǔ)補(bǔ) + 0.0010 -B補(bǔ)補(bǔ) 0.1101 A-B補(bǔ)補(bǔ) A-B補(bǔ)補(bǔ)=0.1101 A-B=0.1101示例示例西華師范大學(xué)西華師范大學(xué)2021-12-10341) X= 4 Y= 5 X補(bǔ)=0 0100 Y補(bǔ)=1 1011(-Y)補(bǔ)=0 01010 1001(+9補(bǔ)碼)2) X= 4 Y= 5 X補(bǔ)=1 1100 Y補(bǔ)=0 0101(-Y)補(bǔ)=1 10111 0111(9補(bǔ)碼)例. 求(X Y)補(bǔ) X補(bǔ)=0 0100 Y補(bǔ)=1 1011 X補(bǔ)=1 1100
26、Y補(bǔ)=0 0101西華師范大學(xué)西華師范大學(xué)35解:A補(bǔ)B補(bǔ)A補(bǔ) + B補(bǔ)+= 0 . 1 0 1 1= 1 . 1 0 1 1= 1 0 . 0 1 1 0= A + B補(bǔ)驗(yàn)證例設(shè) A = 0.1011,B = 0.0101求 A + B補(bǔ)0.1011 0.01010.0110 A + B = 0 . 0 1 1 0A補(bǔ)B補(bǔ)A補(bǔ) + B補(bǔ)+= 1 , 0 1 1 1= 1 , 1 0 1 1= 1 1 , 0 0 1 0= A + B補(bǔ)驗(yàn)證 1001 1110 0101+例設(shè) A = 9,B = 5 求 A+B補(bǔ)解: A + B = 1110示例示例西華師范大學(xué)西華師范大學(xué)2021-12-10
27、36設(shè)機(jī)器數(shù)字長(zhǎng)為設(shè)機(jī)器數(shù)字長(zhǎng)為 8 8 位(含位(含 1 1 位符號(hào)位)位符號(hào)位)且且 A A = 15 = 15, B B = 24 = 24,用補(bǔ)碼求,用補(bǔ)碼求 A A B B解:A = 15 = 0001111B = 24= 0011000A補(bǔ) + B補(bǔ)+A補(bǔ)= 0, 0001111 B補(bǔ)= 1, 1101000= 1, 1110111= A B補(bǔ)B補(bǔ) = 0, 0011000 A B = 1001 = 9A補(bǔ)= 0, 0001111 B補(bǔ)= 1, 1101000示例示例西華師范大學(xué)西華師范大學(xué) 補(bǔ)碼加減運(yùn)算的硬件實(shí)現(xiàn)電路的基本原理仍是補(bǔ)碼加減運(yùn)算的硬件實(shí)現(xiàn)電路的基本原理仍是加法器。只
28、是為了實(shí)現(xiàn)減法,需要在加法器電加法器。只是為了實(shí)現(xiàn)減法,需要在加法器電路中增加取反加路中增加取反加1 1的功能。的功能。1. 1. 行波進(jìn)位的補(bǔ)碼加行波進(jìn)位的補(bǔ)碼加/ /減法器減法器 AABB補(bǔ)補(bǔ)AA補(bǔ)補(bǔ)-B-B補(bǔ)補(bǔ)AA補(bǔ)補(bǔ)BB補(bǔ)補(bǔ)1 1且且 A1A1A A 在需要作減法時(shí),在需要作減法時(shí),將將B B取反(取反(B1B1)后送入加)后送入加法器,并使法器,并使C C0 01 1,即可實(shí)現(xiàn)減法運(yùn)算。,即可實(shí)現(xiàn)減法運(yùn)算。2021-12-1037l實(shí)現(xiàn)電路實(shí)現(xiàn)電路西華師范大學(xué)西華師范大學(xué)波行進(jìn)位的補(bǔ)碼加/減法器電路2021-12-1038西華師范大學(xué)西華師范大學(xué) M M0 B0 Bi i通過(guò)異或門(mén)與
29、通過(guò)異或門(mén)與0 0異或,異或,B Bi i00B Bi i, C C0 00 0 作作 A AB B M M1 B1 Bi i通過(guò)異或門(mén)與通過(guò)異或門(mén)與1 1異或,異或,B Bi i11B Bi i, C C0 01 1 作作 A AB B 電路中采用進(jìn)出符號(hào)位的進(jìn)位進(jìn)行溢出判斷。電路中采用進(jìn)出符號(hào)位的進(jìn)位進(jìn)行溢出判斷。 OVROVRC Cn nCCn n1 12021-12-1039西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)40 在計(jì)算機(jī)算術(shù)運(yùn)算中,有時(shí)必須將采在計(jì)算機(jī)算術(shù)運(yùn)算中,有時(shí)必須將采用給定位數(shù)表示的數(shù)轉(zhuǎn)換成具有更多位數(shù)用給定位數(shù)表示的數(shù)轉(zhuǎn)換成具有更多位數(shù)的某種表示形式,這被稱(chēng)為
30、的某種表示形式,這被稱(chēng)為“符號(hào)擴(kuò)展符號(hào)擴(kuò)展”。 實(shí)際上補(bǔ)碼的符號(hào)擴(kuò)展非常簡(jiǎn)單,所實(shí)際上補(bǔ)碼的符號(hào)擴(kuò)展非常簡(jiǎn)單,所有附加位均用符號(hào)位填充,即正數(shù)用有附加位均用符號(hào)位填充,即正數(shù)用0進(jìn)行進(jìn)行填充,負(fù)數(shù)用填充,負(fù)數(shù)用1填充。填充。4.符號(hào)擴(kuò)展西華師范大學(xué)西華師范大學(xué)4.2.3 補(bǔ)碼的溢出判斷與檢測(cè)方法 1 1. .溢出的產(chǎn)生溢出的產(chǎn)生 在補(bǔ)碼運(yùn)算中,若兩個(gè)正數(shù)相加,結(jié)果為負(fù);在補(bǔ)碼運(yùn)算中,若兩個(gè)正數(shù)相加,結(jié)果為負(fù); 兩個(gè)負(fù)數(shù)相加,結(jié)果為正,則結(jié)果出錯(cuò)。兩個(gè)負(fù)數(shù)相加,結(jié)果為正,則結(jié)果出錯(cuò)。 例例5 5:設(shè):設(shè):X=1011B=11D,Y=111B=7D 則則 X補(bǔ)補(bǔ)=0,1011,Y補(bǔ)補(bǔ)=0,0111
31、 0,1 0 1 1X補(bǔ)補(bǔ) + 0,0 1 1 1Y補(bǔ)補(bǔ) 1,0 0 1 0X+Y補(bǔ)補(bǔ) X+Y補(bǔ)補(bǔ)=1,0010 X+Y=-1110B=-14D 兩正數(shù)相加結(jié)果為兩正數(shù)相加結(jié)果為-14D,顯然是錯(cuò)誤的。顯然是錯(cuò)誤的。41西華師范大學(xué)西華師范大學(xué)例例6:設(shè):設(shè):X=-1011B=-11D,Y=-111B=-7D 則則 X補(bǔ)補(bǔ)=1,0101 Y補(bǔ)補(bǔ)=1,1001 1,0 1 0 1X補(bǔ)補(bǔ) + 1,1 0 0 1Y補(bǔ)補(bǔ) 0,1 1 1 0X+Y補(bǔ)補(bǔ) X+Y補(bǔ)補(bǔ)=0,1110 X+Y=1110B=14D 兩負(fù)數(shù)相加結(jié)果為兩負(fù)數(shù)相加結(jié)果為14D,顯然也是錯(cuò)誤的。顯然也是錯(cuò)誤的。42西華師范大學(xué)西華師范大
32、學(xué)2021-12-1043 如果兩個(gè)正數(shù)相加,得到結(jié)果為負(fù);兩個(gè)負(fù)數(shù)如果兩個(gè)正數(shù)相加,得到結(jié)果為負(fù);兩個(gè)負(fù)數(shù)相加,得到的結(jié)果為正,則運(yùn)算結(jié)果是錯(cuò)誤的。相加,得到的結(jié)果為正,則運(yùn)算結(jié)果是錯(cuò)誤的。造成錯(cuò)誤的原因,是因?yàn)檫\(yùn)算結(jié)果超出了機(jī)器所能表示的數(shù)據(jù)范圍,數(shù)值位侵占了符號(hào)位,正確符號(hào)被擠走了。正溢出:兩個(gè)正數(shù)相加的結(jié)果超出機(jī)器所能表示的最大正數(shù)。負(fù)溢出:兩個(gè)負(fù)數(shù)相加的結(jié)果小于機(jī)器所能表示的最小負(fù)數(shù)。出現(xiàn)溢出后,機(jī)器將無(wú)法正確表示,因此必須正確判別溢出并及時(shí)加以處理。溢出判斷:在什么情況下可能產(chǎn)生溢出?西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)正確正確0 00110 0010(1)A=3 B=
33、2 3+2:0 0101 (2)A=10 B=7 10+7: 0 10100 01111 0001 正溢正溢正確正確負(fù)溢負(fù)溢(3)A= -3 B= -2-3+(-2):1 1011 1 11011 1110(4)A= -10 B= -7 -10+(-7):0 1111 1 01101 1001西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)45正確正確正確正確(5)A=6 B= -4 6+(-4):0 0010 0 01101 1100(6)A= -6 B=4 -6+4:1 1110 1 10100 0100西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)2021-12-1046(2)A=10
34、 B=7 10+7 :0 1010 0 01111 0001 (4)A= -10 B= -7 -10+(-7):0 1111 1 01101 10011. 硬件判斷邏輯一(SA、SB與Sf的關(guān)系)溢出= SASBSfSASfSB西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)正確0 00110 0010(1)A=3 B=2 3+2:0 0101 (2)A=10 B=7 10+7: 0 10100 01111 0001 正溢正確負(fù)溢(3)A= -3 B= -2-3+(-2):1 1011 1 11011 1110(4)A= -10 B= -7 -10+(-7):0 1111 1 01101 10
35、01Cf=0C1=0Cf=0C1=1Cf=1C1=1Cf=1C1=011112. 硬件判斷邏輯二(Cf與C1的關(guān)系)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)48正確正確(5)A=6 B= -4 6+(-4):0 0010 0 01101 1100(6)A= -6 B=4 -6+4:1 1110 1 10100 0100Cf=1C1=1Cf=0C1=011溢出= Cf C1西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)(1)3+2:正確00 001100 001000 0101 (2)10+7:00 101000 011101 0001 正溢正確負(fù)溢(3)-3+(-2):11 0111
36、 11 110111 1110(4)-10+(-7):10 1111 11 011011 1001第一符號(hào)位Sf1第二符號(hào)位Sf23. 硬件判斷邏輯三(雙符號(hào)位)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)正確正確(5)6+(-4):00 0010 00 011011 1100(6)-6+4:11 1110 11 101000 0100溢出= Sf1 Sf2西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)2021-12-1051溢出= Sf1 Sf21. 硬件判斷邏輯一(SA、SB與Sf的關(guān)系)溢出= SASBSfSASfSB2. 硬件判斷邏輯二(Cf與C的關(guān)系)溢出= Cf C13. 硬
37、件判斷邏輯三(雙符號(hào)位)西華師范大學(xué)西華師范大學(xué)2021-12-1052溢出判斷電路溢出判斷電路&=1=1XfSfYfOVR=1OVRCfC1西華師范大學(xué)西華師范大學(xué)2021-12-1053例例1 1:x x0.10010.1001,y y0.01010.0101,求,求x xy y?解:解: xx變形補(bǔ)變形補(bǔ)00.100100.1001, yy變形補(bǔ)變形補(bǔ)00.010100.0101 00.100100.100100.010100.010100.111000.1110 xy變形補(bǔ)00.100100.010100.1110 xy0.1110西華師范大學(xué)西華師范大學(xué)2021-12-105
38、4例例2 2:x x0.01100.0110,y y0.00110.0011,求,求x xy y?解:解: xx變形補(bǔ)變形補(bǔ)11.101011.1010, yy變形補(bǔ)變形補(bǔ)11.110111.1101, 11.101011.101011.110111.110111.011111.01111 1丟模丟模xy變形補(bǔ)11.101011.110111.0111 xy0.1001西華師范大學(xué)西華師范大學(xué)2021-12-1055例例3 3:x x0.10100.1010,y y0.10010.1001,求,求x xy y?解:解:xx變形補(bǔ)變形補(bǔ)00.101000.1010, yy變形補(bǔ)變形補(bǔ)00.100
39、100.1001, x xyy變形補(bǔ)變形補(bǔ)00.101000.101000.100100.1001 S Sf1f1SSf2f21 1 運(yùn)算結(jié)果溢出運(yùn)算結(jié)果溢出00.101000.101000.100100.100101.001101.0011正溢出正溢出西華師范大學(xué)西華師范大學(xué)2021-12-1056例例4 4:x x0.11010.1101,y y0.10110.1011,求,求x xy y?解:解:xx變形補(bǔ)變形補(bǔ)11.001111.0011, yy變形補(bǔ)變形補(bǔ)11.010111.0101, x xyy變形補(bǔ)變形補(bǔ)11.001111.001111.010111.0101 S Sf1f1SS
40、f2f21 1 運(yùn)算結(jié)果溢出運(yùn)算結(jié)果溢出11.001111.001111.010111.010110.100010.10001 1負(fù)溢出負(fù)溢出西華師范大學(xué)西華師范大學(xué)2021-12-1057 變形補(bǔ)碼在正常情況下,變形補(bǔ)碼在正常情況下, S Sf1f1S Sf2f2,所,所以存儲(chǔ)數(shù)據(jù)時(shí)采用正常補(bǔ)碼,只在運(yùn)算以存儲(chǔ)數(shù)據(jù)時(shí)采用正常補(bǔ)碼,只在運(yùn)算時(shí)采用變形補(bǔ)碼,以便判別溢出。時(shí)采用變形補(bǔ)碼,以便判別溢出。 變形補(bǔ)碼的溢出判斷電路變形補(bǔ)碼的溢出判斷電路=1OVRSf1Sf2西華師范大學(xué)西華師范大學(xué)4.2.4 補(bǔ)碼定點(diǎn)加減運(yùn)算的實(shí)現(xiàn)補(bǔ)碼定點(diǎn)加減運(yùn)算的實(shí)現(xiàn) 要實(shí)現(xiàn)補(bǔ)碼加法,則需給出要實(shí)現(xiàn)補(bǔ)碼加法,則需給出
41、X XF F、Y YF F和和F FX X三個(gè)控制信號(hào),同時(shí)打開(kāi)門(mén)三個(gè)控制信號(hào),同時(shí)打開(kāi)門(mén)A A、門(mén)門(mén)B B和門(mén)和門(mén)C C,把寄存器把寄存器X X和寄存器和寄存器Y Y的內(nèi)容的內(nèi)容送入加法器的兩個(gè)輸入端進(jìn)行加法運(yùn)算,送入加法器的兩個(gè)輸入端進(jìn)行加法運(yùn)算,并把結(jié)果送回,最后由打入脈沖并把結(jié)果送回,最后由打入脈沖CPCPX X打入打入寄存器寄存器X X。 減法與加法的不同之處在于,加法使減法與加法的不同之處在于,加法使用用Y YF F控制信號(hào),減法使用控制信號(hào),減法使用 F F和和1 1F F控制信號(hào),其余控制信號(hào)相同??刂菩盘?hào),其余控制信號(hào)相同。 58Y西華師范大學(xué)西華師范大學(xué)補(bǔ)碼加減運(yùn)算的邏輯電
42、路補(bǔ)碼加減運(yùn)算的邏輯電路圖圖4-8 補(bǔ)碼加減運(yùn)算器框圖補(bǔ)碼加減運(yùn)算器框圖 59BF0 10 1XXsYsFs寄存器寄存器加法器 YFF XX F1 F FYYCPXAC1 西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)60在計(jì)算機(jī)中,實(shí)現(xiàn)乘除運(yùn)算的方案通常有在計(jì)算機(jī)中,實(shí)現(xiàn)乘除運(yùn)算的方案通常有3 3種:種: 軟件實(shí)現(xiàn)。在低檔微機(jī)中無(wú)乘除運(yùn)算指令,軟件實(shí)現(xiàn)。在低檔微機(jī)中無(wú)乘除運(yùn)算指令,只能用乘法和除法子程序來(lái)實(shí)現(xiàn)乘除運(yùn)算。只能用乘法和除法子程序來(lái)實(shí)現(xiàn)乘除運(yùn)算。 在原有實(shí)現(xiàn)加減運(yùn)算的運(yùn)算器基礎(chǔ)上增加在原有實(shí)現(xiàn)加減運(yùn)算的運(yùn)算器基礎(chǔ)上增加一些邏輯線路,使乘除運(yùn)算變換成加減和移位操一些邏輯線路,使乘除
43、運(yùn)算變換成加減和移位操作。在機(jī)器中設(shè)有乘除指令。作。在機(jī)器中設(shè)有乘除指令。 設(shè)置專(zhuān)用的乘、除法器,機(jī)器中設(shè)有相應(yīng)設(shè)置專(zhuān)用的乘、除法器,機(jī)器中設(shè)有相應(yīng)的乘除指令。的乘除指令。 不管采用什么方案實(shí)現(xiàn)乘除法,基本原理不管采用什么方案實(shí)現(xiàn)乘除法,基本原理是相同的。如果采用第種方案,則必然會(huì)涉及是相同的。如果采用第種方案,則必然會(huì)涉及到移位操作。到移位操作。4.3 帶符號(hào)數(shù)的移位和舍入操作帶符號(hào)數(shù)的移位和舍入操作西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)西華師范大學(xué)611 1. .原碼的移位規(guī)則原碼的移位規(guī)則 不論正數(shù)還是負(fù)數(shù),在左移或右移時(shí),符號(hào)位不論正數(shù)還是負(fù)數(shù),在左移或右移時(shí),符號(hào)位均不變,空出位一律以
44、均不變,空出位一律以“0 0”補(bǔ)入。補(bǔ)入。 負(fù)數(shù)的原碼移位前后結(jié)果為:負(fù)數(shù)的原碼移位前后結(jié)果為: 左移:移位前有:左移:移位前有:1 1 X X1 1 X X2 2 X Xn-1n-1 X Xn n 移位后有:移位后有:1 1 X X2 2 X X3 3 X Xn n 0 0 右移:移位前有:右移:移位前有:1 1 X X1 1 X X2 2 X Xn-1n-1 X Xn n 移位后有:移位后有:1 1 0 0 X X1 1 X Xn-2n-2 X Xn-1n-1 4.3.1 帶符號(hào)數(shù)的移位操作帶符號(hào)數(shù)的移位操作 西華師范大學(xué)西華師范大學(xué)2.2.補(bǔ)碼的移位規(guī)則補(bǔ)碼的移位規(guī)則 正數(shù)正數(shù) 符號(hào)位不
45、變,不論左移或右移,空出位一符號(hào)位不變,不論左移或右移,空出位一律以律以“0 0”補(bǔ)入。補(bǔ)入。負(fù)數(shù)負(fù)數(shù) 符號(hào)位不變,左移后的空出位補(bǔ)符號(hào)位不變,左移后的空出位補(bǔ)“0 0”,右移后的空出位補(bǔ)右移后的空出位補(bǔ)“1 1”。 左移:移位前有:左移:移位前有:1 1 X X1 1 X X2 2 X Xn-1n-1 X Xn n 移位后有:移位后有:1 1 X X2 2 X X3 3 X Xn n 0 0 右移:移位前有:右移:移位前有:1 1 X X1 1 X X2 2 X Xn-1n-1 X Xn n 移位后有:移位后有:1 1 1 1 X X1 1 X Xn-2n-2 X Xn-1n-1 62西華師
46、范大學(xué)西華師范大學(xué)3.3.移位功能的實(shí)現(xiàn)移位功能的實(shí)現(xiàn) 在計(jì)算機(jī)中,通常移位操作由移位寄存在計(jì)算機(jī)中,通常移位操作由移位寄存器來(lái)實(shí)現(xiàn),但也有一些計(jì)算機(jī)不設(shè)置專(zhuān)門(mén)的器來(lái)實(shí)現(xiàn),但也有一些計(jì)算機(jī)不設(shè)置專(zhuān)門(mén)的移位寄存器,而在加法器的輸出端加一個(gè)移移位寄存器,而在加法器的輸出端加一個(gè)移位器。移位器是由與門(mén)和或門(mén)組成的邏輯電位器。移位器是由與門(mén)和或門(mén)組成的邏輯電路(實(shí)際是一個(gè)多路選擇器),可以實(shí)現(xiàn)直路(實(shí)際是一個(gè)多路選擇器),可以實(shí)現(xiàn)直傳(不移位)、左斜一位送(左移一位)和傳(不移位)、左斜一位送(左移一位)和右斜一位送(右移一位)的功能。右斜一位送(右移一位)的功能。63西華師范大學(xué)西華師范大學(xué)移位器邏
47、輯電路 圖圖4-9 移位器邏輯電路移位器邏輯電路 64LiFiFi+1Fi-12F LF LF/2 L1 西華師范大學(xué)西華師范大學(xué)4.3.2 帶符號(hào)數(shù)的舍入操作帶符號(hào)數(shù)的舍入操作 在算術(shù)右移時(shí),由于受到硬件的限制,在算術(shù)右移時(shí),由于受到硬件的限制,運(yùn)算結(jié)果有可能需要舍去一定的尾數(shù),這運(yùn)算結(jié)果有可能需要舍去一定的尾數(shù),這會(huì)造成一些誤差。為了縮小誤差,就要進(jìn)會(huì)造成一些誤差。為了縮小誤差,就要進(jìn)行舍入處理。假定經(jīng)過(guò)運(yùn)算后的數(shù)共有行舍入處理。假定經(jīng)過(guò)運(yùn)算后的數(shù)共有p+qp+q位,現(xiàn)僅允許保留前位,現(xiàn)僅允許保留前p p位。常見(jiàn)的舍入方法位。常見(jiàn)的舍入方法有:有:恒舍(切斷)恒舍(切斷) 無(wú)論多余部分無(wú)論
48、多余部分q q位為何代碼,一律舍去,位為何代碼,一律舍去,保留部分的保留部分的p p位不作任何改變。位不作任何改變。65西華師范大學(xué)西華師范大學(xué)馮馮諾依曼舍入法諾依曼舍入法 這種舍入法又稱(chēng)為恒置這種舍入法又稱(chēng)為恒置1 1法,即不論多法,即不論多余部分余部分q q位為何代碼,都把保留部分位為何代碼,都把保留部分p p位的位的最低位置最低位置1 1。下舍上入法下舍上入法 下舍上入就是下舍上入就是0 0舍舍1 1入。用將要入。用將要舍去的舍去的q q位的最高位位的最高位作為判斷標(biāo)志,以決定保留部作為判斷標(biāo)志,以決定保留部分是否加分是否加1 1。如該位為。如該位為0 0,則舍去整個(gè),則舍去整個(gè)q q位
49、位(相當(dāng)于恒舍);如該位為(相當(dāng)于恒舍);如該位為1 1,則在保留的,則在保留的p p位的最低位上加位的最低位上加1 1。66西華師范大學(xué)西華師范大學(xué) 查表舍入法查表舍入法 查表舍入法又稱(chēng)查表舍入法又稱(chēng)ROMROM舍入法,因?yàn)樗蒙崛敕?,因?yàn)樗肦OMROM來(lái)存放舍入處理表,每次經(jīng)查表來(lái)讀得來(lái)存放舍入處理表,每次經(jīng)查表來(lái)讀得相應(yīng)的處理結(jié)果。通常,相應(yīng)的處理結(jié)果。通常,ROMROM表的容量為表的容量為2 2K K個(gè)單元,每個(gè)單元字長(zhǎng)為個(gè)單元,每個(gè)單元字長(zhǎng)為K-1K-1位。舍入處理位。舍入處理表的內(nèi)容設(shè)置一般采用的方法是:當(dāng)表的內(nèi)容設(shè)置一般采用的方法是:當(dāng)K K位數(shù)位數(shù)據(jù)的高據(jù)的高K-1K-1位為
50、全位為全“1 1”時(shí),讓那些單元按時(shí),讓那些單元按恒舍法填入恒舍法填入K-1K-1位全位全“1 1”,其余單元都按,其余單元都按下舍上入法來(lái)填其內(nèi)容。下舍上入法來(lái)填其內(nèi)容。67西華師范大學(xué)西華師范大學(xué)4.4 定點(diǎn)乘法運(yùn)算定點(diǎn)乘法運(yùn)算 在計(jì)算機(jī)中,乘法運(yùn)算大多數(shù)由累加在計(jì)算機(jī)中,乘法運(yùn)算大多數(shù)由累加與移位來(lái)實(shí)現(xiàn),也有些機(jī)器中具有由大與移位來(lái)實(shí)現(xiàn),也有些機(jī)器中具有由大規(guī)模集成電路制造的陣列乘法模塊。規(guī)模集成電路制造的陣列乘法模塊。68西華師范大學(xué)西華師范大學(xué)4.4.1 原碼一位乘法原碼一位乘法1 1. .原碼一位乘法算法原碼一位乘法算法 原碼一位乘法是從手算演變而來(lái)的,原碼一位乘法是從手算演變而來(lái)
51、的,即用兩個(gè)操作數(shù)的絕對(duì)值相乘,乘積的符即用兩個(gè)操作數(shù)的絕對(duì)值相乘,乘積的符號(hào)為兩操作數(shù)符號(hào)的異或值(同號(hào)為正,號(hào)為兩操作數(shù)符號(hào)的異或值(同號(hào)為正,異號(hào)為負(fù))。異號(hào)為負(fù))。 乘積乘積P=|X|P=|X|Y|Y| 符號(hào)符號(hào)P Ps s=X=Xs sY Ys s 式中:式中:P Ps s為乘積的符號(hào),為乘積的符號(hào),X Xs s和和Y Ys s為被乘為被乘數(shù)和乘數(shù)的符號(hào)。數(shù)和乘數(shù)的符號(hào)。69西華師范大學(xué)西華師范大學(xué)原碼一位乘法的規(guī)則:原碼一位乘法的規(guī)則: 參加運(yùn)算的操作數(shù)取其絕對(duì)值;參加運(yùn)算的操作數(shù)取其絕對(duì)值; 令乘數(shù)的最低位為判斷位,若為令乘數(shù)的最低位為判斷位,若為“1 1”,加被乘數(shù),若為加被乘
52、數(shù),若為“0 0”,不加被乘數(shù)(加,不加被乘數(shù)(加0 0);); 累加后的部分積以及乘數(shù)右移一位;累加后的部分積以及乘數(shù)右移一位; 重復(fù)重復(fù)n n次次和和 ; 符號(hào)位單獨(dú)處理,同號(hào)為正,異號(hào)為符號(hào)位單獨(dú)處理,同號(hào)為正,異號(hào)為負(fù)。負(fù)。 70西華師范大學(xué)西華師范大學(xué) 通常,乘法運(yùn)算需要通常,乘法運(yùn)算需要3 3個(gè)寄存器。被乘個(gè)寄存器。被乘數(shù)存放在數(shù)存放在B B寄存器中;乘數(shù)存放在寄存器中;乘數(shù)存放在C C寄存器寄存器中;中;A A寄存器用來(lái)存放部分積與最后乘積的寄存器用來(lái)存放部分積與最后乘積的高位部分,它的初值為高位部分,它的初值為0 0。運(yùn)算結(jié)束后寄存。運(yùn)算結(jié)束后寄存器器C C中不再保留乘數(shù),改為
53、存放乘積的低位中不再保留乘數(shù),改為存放乘積的低位部分。部分。 例例8 8:已知:已知:X=0.1101X=0.1101,Y=-0.1011Y=-0.1011,求:求:X XY Y。 |X|=00.1101 |X|=00.1101B B,|Y|=.1011|Y|=.1011C C,0 0A A71西華師范大學(xué)西華師范大學(xué)原碼一位乘法示例原碼一位乘法示例 A C 說(shuō)明說(shuō)明720 0.0 0 0 0 1 0 1 1+|X| 0 0.1 1 0 1 C4=1,+|X|0 0.1 1 0 1 0 0.0 1 1 0 1 1 0 1 部分積右移一位部分積右移一位0 1.0 0 1 1+|X| 0 0.1
54、1 0 1 C4=1,+|X| 0 0.1 0 0 1 1 1 1 0 部分積右移一位部分積右移一位+0 0 0.0 0 0 0 C4=0,+00 0.1 0 0 1 0 0.0 1 0 0 1 1 1 1 部分積右移一位部分積右移一位+|X| 0 0.1 1 0 1 C4=1,+|X|0 1.0 0 0 1 0 0.1 0 0 0 1 1 1 1 部分積右移一位部分積右移一位PS=XS YS=0 1=1X Y=-0.10001111 西華師范大學(xué)西華師范大學(xué)原碼一位乘法流程圖原碼一位乘法流程圖 73EndYN|X| B,|Y| C0 A,0 CRCn=1?CR+1CRCR=n? (A+0)
55、A C C (A+B) A C CXS YS PSYN 圖圖4-11 原碼一位乘法流程圖原碼一位乘法流程圖西華師范大學(xué)西華師范大學(xué)2.原碼一位乘法運(yùn)算的實(shí)現(xiàn)原碼一位乘法運(yùn)算的實(shí)現(xiàn) 圖圖4-124-12中中A A、B B是是n+2n+2位的寄存器,位的寄存器,C C是是n n位的寄位的寄存器,存器,A A寄存器和寄存器和C C寄存器是級(jí)聯(lián)在一起的,它們寄存器是級(jí)聯(lián)在一起的,它們都具有右移一位的功能,在右移控制信號(hào)的作用都具有右移一位的功能,在右移控制信號(hào)的作用下,下,A A寄存器最低一位的值將移入寄存器最低一位的值將移入C C寄存器的最高寄存器的最高位。位。C C寄存器的最低位的值作為字級(jí)與門(mén)的
56、控制信寄存器的最低位的值作為字級(jí)與門(mén)的控制信號(hào),以控制加被乘數(shù)還是不加被乘數(shù)(即加號(hào),以控制加被乘數(shù)還是不加被乘數(shù)(即加0 0)。)。C C寄存器中的乘數(shù)在逐次右移過(guò)程中將逐步丟失,寄存器中的乘數(shù)在逐次右移過(guò)程中將逐步丟失,取而代之的是乘積的低位部分。原碼一位乘法運(yùn)取而代之的是乘積的低位部分。原碼一位乘法運(yùn)算器電路中除去三個(gè)寄存器外,還需要一個(gè)算器電路中除去三個(gè)寄存器外,還需要一個(gè)n+2n+2位位的加法器、一個(gè)計(jì)數(shù)器、的加法器、一個(gè)計(jì)數(shù)器、n+2n+2個(gè)與門(mén)(控制是否加個(gè)與門(mén)(控制是否加被乘數(shù))和一個(gè)異或門(mén)(處理符號(hào)位)。被乘數(shù))和一個(gè)異或門(mén)(處理符號(hào)位)。74西華師范大學(xué)西華師范大學(xué)4.4.
57、2 補(bǔ)碼一位乘法補(bǔ)碼一位乘法 雖然原碼乘法比補(bǔ)碼乘法容易實(shí)現(xiàn),但雖然原碼乘法比補(bǔ)碼乘法容易實(shí)現(xiàn),但因?yàn)檠a(bǔ)碼加減法簡(jiǎn)單,在以加減運(yùn)算為主的因?yàn)檠a(bǔ)碼加減法簡(jiǎn)單,在以加減運(yùn)算為主的通用機(jī)中操作數(shù)都用補(bǔ)碼表示,所以這類(lèi)計(jì)通用機(jī)中操作數(shù)都用補(bǔ)碼表示,所以這類(lèi)計(jì)算機(jī)在做乘法時(shí)常使用補(bǔ)碼乘法。算機(jī)在做乘法時(shí)常使用補(bǔ)碼乘法。1 1. .校正法校正法 校正法是將校正法是將 XX補(bǔ)補(bǔ)和和 YY補(bǔ)補(bǔ)按原碼規(guī)則運(yùn)算,按原碼規(guī)則運(yùn)算,所得結(jié)果根據(jù)情況再加以校正,從而得到正所得結(jié)果根據(jù)情況再加以校正,從而得到正確的確的 X XYY補(bǔ)補(bǔ)。補(bǔ)碼乘法的統(tǒng)一表達(dá)式:。補(bǔ)碼乘法的統(tǒng)一表達(dá)式: X XYY補(bǔ)補(bǔ)=XX補(bǔ)補(bǔ)(0.(0.Y
58、 Y1 1Y Y2 2Y Yn n)+-X)+-X補(bǔ)補(bǔ)Y Ys s75西華師范大學(xué)西華師范大學(xué)補(bǔ)碼一位乘校正法示例1. 0.10010.11012. 0.1001 0.1101練習(xí)練習(xí)西華師范大學(xué)西華師范大學(xué)2.比較法比較法Booth乘法乘法 遞推公式:遞推公式: Z0補(bǔ)補(bǔ)=0 Z1補(bǔ)補(bǔ)=2-1Z0補(bǔ)補(bǔ)+(Yn+1-Yn)X補(bǔ)補(bǔ) Z2補(bǔ)補(bǔ)=2-1Z1補(bǔ)補(bǔ)+(Yn-Yn-1)X補(bǔ)補(bǔ) Zn補(bǔ)補(bǔ)=2-1Zn-1補(bǔ)補(bǔ)+(Y2-Y1)X補(bǔ)補(bǔ) XY補(bǔ)補(bǔ)=Zn補(bǔ)補(bǔ)+(Y1-Ys)X補(bǔ)補(bǔ) 式中,式中,Z0補(bǔ)補(bǔ)為初始部分積,為初始部分積,Z1補(bǔ)補(bǔ)Zn補(bǔ)補(bǔ)依次為各次求得的累加并右移依次為各次求得的累加并右移之后的
59、部分積。之后的部分積。 77西華師范大學(xué)西華師范大學(xué)BoothBooth乘法規(guī)則:乘法規(guī)則: 參加運(yùn)算的數(shù)用補(bǔ)碼表示;參加運(yùn)算的數(shù)用補(bǔ)碼表示; 符號(hào)位參加運(yùn)算;符號(hào)位參加運(yùn)算; 乘數(shù)最低位后面增加一位附加位乘數(shù)最低位后面增加一位附加位Y Yn+1n+1,其初值為其初值為0 0; 由于每求一次部分積要右移一位,所由于每求一次部分積要右移一位,所以乘數(shù)的最低兩位以乘數(shù)的最低兩位Y Yn n、Y Yn+1n+1的值決定了每次的值決定了每次應(yīng)執(zhí)行的操作;應(yīng)執(zhí)行的操作; 移位按補(bǔ)碼右移規(guī)則進(jìn)行;移位按補(bǔ)碼右移規(guī)則進(jìn)行; 共需做共需做n+1n+1次累加,次累加,n n次移位,第次移位,第n+1n+1次不移
60、位。次不移位。78西華師范大學(xué)西華師范大學(xué)BoothBooth乘法運(yùn)算操作乘法運(yùn)算操作 判斷位判斷位Y Yn n Y Yn+1n+1 操操 作作 0 0 0 0 原部分積右移一位原部分積右移一位 0 1 0 1 原部分積加原部分積加 XX補(bǔ)補(bǔ)后右移一位后右移一位 1 0 1 0 原部分積加原部分積加-XX補(bǔ)補(bǔ)后右移一位后右移一位 1 1 1 1 原部分積右移一位原部分積右移一位 79西華師范大學(xué)西華師范大學(xué) 由于符號(hào)位要參加運(yùn)算,部分積累加時(shí)由于符號(hào)位要參加運(yùn)算,部分積累加時(shí)最高有效位產(chǎn)生的進(jìn)位可能會(huì)侵占符號(hào)位,最高有效位產(chǎn)生的進(jìn)位可能會(huì)侵占符號(hào)位,故被乘數(shù)和部分積應(yīng)取雙符號(hào)位,而乘數(shù)故被乘數(shù)和部分積
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度退房流程規(guī)范合同
- 二零二五年度未成年人特殊監(jiān)護(hù)協(xié)議書(shū)
- 二零二五年度鋼琴考級(jí)輔導(dǎo)班報(bào)名合同書(shū)
- 二零二五年度房地產(chǎn)糾紛民事調(diào)解協(xié)議書(shū)生效流程與保障措施
- 二零二五年度交通事故雙方當(dāng)事人自行和解協(xié)議書(shū)
- 二零二五年度教育培訓(xùn)機(jī)構(gòu)合作合同續(xù)約提前通知期限
- 二零二五年度房產(chǎn)投資房屋買(mǎi)賣(mài)借款合同
- 2025年度游泳池租賃與水上樂(lè)園項(xiàng)目運(yùn)營(yíng)安全保障合同
- 2025年甘肅貨運(yùn)從業(yè)資格證試題庫(kù)和答案大全
- 大城市渣土運(yùn)輸合同
- 分布式光伏發(fā)電開(kāi)發(fā)建設(shè)管理辦法2025
- 《科幻小說(shuō)賞析與寫(xiě)作》 課件 -第六章 “外星文明”的善意與惡行-《安德的游戲》
- 《我國(guó)的文化安全》課件
- 2025年貴州蔬菜集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025蛇年一上英語(yǔ)寒假作業(yè)
- 醫(yī)院設(shè)施日常巡查管理制度
- 2025年太倉(cāng)市文化旅游發(fā)展集團(tuán)限公司及子公司公開(kāi)招聘12名高頻重點(diǎn)提升(共500題)附帶答案詳解
- 機(jī)械制圖題庫(kù)及答案
- 安裝承包合同(2025年)
- 云上貴州大數(shù)據(jù)(集團(tuán))有限公司招聘筆試沖刺題2024
- 人教版四年級(jí)下冊(cè)數(shù)學(xué)第二單元觀察物體(二) 單元測(cè)試
評(píng)論
0/150
提交評(píng)論