版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2022-7-11第四章第四章 運(yùn)算器運(yùn)算器l運(yùn)算器部件是計算機(jī)中的執(zhí)行部件,它可以運(yùn)算器部件是計算機(jī)中的執(zhí)行部件,它可以對二進(jìn)制數(shù)據(jù)進(jìn)行各種算術(shù)和邏輯運(yùn)算;對二進(jìn)制數(shù)據(jù)進(jìn)行各種算術(shù)和邏輯運(yùn)算;l運(yùn)算器是計算機(jī)內(nèi)部數(shù)據(jù)信息的重要通路。運(yùn)算器是計算機(jī)內(nèi)部數(shù)據(jù)信息的重要通路。l本章重點介紹運(yùn)算器的核心部件本章重點介紹運(yùn)算器的核心部件算術(shù)邏算術(shù)邏輯運(yùn)算單元輯運(yùn)算單元ALU的構(gòu)成與工作原理,以及數(shù)的構(gòu)成與工作原理,以及數(shù)據(jù)在運(yùn)算器中基本據(jù)在運(yùn)算器中基本運(yùn)算方法運(yùn)算方法。2022-7-124.1 運(yùn)算器的組成與功能運(yùn)算器的組成與功能 一、一、算術(shù)邏輯運(yùn)算單元算術(shù)邏輯運(yùn)算單元ALU運(yùn)算器實現(xiàn)了對計算機(jī)中數(shù)
2、據(jù)的加工處理;運(yùn)算器實現(xiàn)了對計算機(jī)中數(shù)據(jù)的加工處理; 包括數(shù)值數(shù)據(jù)的算術(shù)運(yùn)算包括數(shù)值數(shù)據(jù)的算術(shù)運(yùn)算和和邏輯數(shù)據(jù)的邏輯邏輯數(shù)據(jù)的邏輯操作。操作。運(yùn)算器中完成數(shù)據(jù)算術(shù)與邏輯運(yùn)算的部件稱運(yùn)算器中完成數(shù)據(jù)算術(shù)與邏輯運(yùn)算的部件稱之為算術(shù)與邏輯運(yùn)算單元(之為算術(shù)與邏輯運(yùn)算單元(Arithmetic and Logic Unit,簡稱,簡稱ALU)。)。ALU是運(yùn)算器的核是運(yùn)算器的核心。心。2022-7-13功能:功能:實現(xiàn)實現(xiàn)二進(jìn)制數(shù)據(jù)的算術(shù)、邏輯運(yùn)算二進(jìn)制數(shù)據(jù)的算術(shù)、邏輯運(yùn)算 算術(shù)運(yùn)算算術(shù)運(yùn)算加、減、乘、除等加、減、乘、除等 邏輯運(yùn)算邏輯運(yùn)算與、或、非、移位等與、或、非、移位等組成:組成:由由ALU、控
3、制線路、多路選擇器、控制線路、多路選擇器、 移位器等組成移位器等組成 ALU通常表示為兩個輸入端口,一個輸出端通常表示為兩個輸入端口,一個輸出端口和多個功能控制信號端的這樣的一個邏輯口和多個功能控制信號端的這樣的一個邏輯符號。符號。2022-7-14ALU的邏輯符號表示與多路開關(guān)的邏輯符號表示與多路開關(guān)2022-7-15二、寄存器組二、寄存器組 運(yùn)算器內(nèi)設(shè)有若干通用寄存器,構(gòu)成通用寄運(yùn)算器內(nèi)設(shè)有若干通用寄存器,構(gòu)成通用寄存器組;用于暫時存放參加運(yùn)算的數(shù)據(jù)和某些存器組;用于暫時存放參加運(yùn)算的數(shù)據(jù)和某些中間結(jié)果。中間結(jié)果。 通用寄存器的數(shù)量越多,對提高運(yùn)算器性能通用寄存器的數(shù)量越多,對提高運(yùn)算器性
4、能和程序執(zhí)行速度越有利。和程序執(zhí)行速度越有利。 通用寄存器組是對用戶開放的,用戶可以通通用寄存器組是對用戶開放的,用戶可以通過指令去使用這些寄存器。過指令去使用這些寄存器。1 1、通用寄存器、通用寄存器 通用寄存器組用于暫時存放參加運(yùn)算的數(shù)通用寄存器組用于暫時存放參加運(yùn)算的數(shù)據(jù)和某些中間結(jié)果。據(jù)和某些中間結(jié)果。2022-7-16 在運(yùn)算器中用來提供一個操作數(shù)并存放運(yùn)算在運(yùn)算器中用來提供一個操作數(shù)并存放運(yùn)算 結(jié)果的通用寄存器稱作為累加器。結(jié)果的通用寄存器稱作為累加器。 如:如:ADD A, Rj2022-7-172、專用寄存器、專用寄存器 運(yùn)算器需要記錄下指令執(zhí)行過程中的重要運(yùn)算器需要記錄下指令
5、執(zhí)行過程中的重要 狀態(tài)標(biāo)記,以及提供運(yùn)算前后數(shù)據(jù)的暫存狀態(tài)標(biāo)記,以及提供運(yùn)算前后數(shù)據(jù)的暫存 緩沖等,這通過在運(yùn)算器中設(shè)置若干專用緩沖等,這通過在運(yùn)算器中設(shè)置若干專用 寄存器來實現(xiàn)。寄存器來實現(xiàn)。l 循環(huán)計數(shù)器循環(huán)計數(shù)器對程序員是透明的。對程序員是透明的。l 指令寄存器指令寄存器IR(Instruction Register)用來存)用來存放當(dāng)前正在執(zhí)行的一條指令。放當(dāng)前正在執(zhí)行的一條指令。2022-7-18l程序狀態(tài)字程序狀態(tài)字PSW(Program Status Word),它,它 存放著指令執(zhí)行結(jié)果的某些狀態(tài);如是否溢存放著指令執(zhí)行結(jié)果的某些狀態(tài);如是否溢 出、是否為零、是否有進(jìn)位出、是否
6、為零、是否有進(jìn)位/借位、是否為負(fù)借位、是否為負(fù) 等。它對程序員是開放的。等。它對程序員是開放的。l堆棧指針堆棧指針SP(Stack Pointer),它指示了堆棧的,它指示了堆棧的 使用情況。使用情況。2022-7-19OF 15 11 10 9 8 7 6 4 2 0DF IF TF SF ZFAFCFPF8086/8088 標(biāo)志寄存器標(biāo)志寄存器FLAG 8086/8088 標(biāo)志寄存器標(biāo)志寄存器 8086/8088 段寄存器及段寄存器及IP2022-7-110三、控制邏輯三、控制邏輯在運(yùn)算器中附加一些控制線路;以達(dá)到運(yùn)算在運(yùn)算器中附加一些控制線路;以達(dá)到運(yùn)算 速度快,運(yùn)算精度高的目的。速度快
7、,運(yùn)算精度高的目的。 運(yùn)算器中的乘除運(yùn)算和某些邏輯運(yùn)算是通過運(yùn)算器中的乘除運(yùn)算和某些邏輯運(yùn)算是通過 移位操作來實現(xiàn)的。在移位操作來實現(xiàn)的。在ALU的輸出端設(shè)置移的輸出端設(shè)置移 位線路來實現(xiàn)左移、右移和直送。位線路來實現(xiàn)左移、右移和直送。2022-7-111 移位線路是一個多路選擇器。移位線路是一個多路選擇器。 實現(xiàn)移位功能的多路選擇器實現(xiàn)移位功能的多路選擇器2022-7-1124.2 4.2 加法器及定點加減法運(yùn)算加法器及定點加減法運(yùn)算 4.2.1 4.2.1 加法器的實現(xiàn)加法器的實現(xiàn)一、一、 一位加法器一位加法器1、半加器、半加器定義:定義:半加半加 兩個一位二進(jìn)制數(shù)相加,不考慮進(jìn)位輸入。兩
8、個一位二進(jìn)制數(shù)相加,不考慮進(jìn)位輸入。半加器半加器 實現(xiàn)半加邏輯的電路。實現(xiàn)半加邏輯的電路。設(shè)計步驟:設(shè)計步驟:(1)輸入變量)輸入變量A,B 表示兩個一位二進(jìn)制數(shù)。表示兩個一位二進(jìn)制數(shù)。 輸出變量輸出變量S 相加后的和數(shù)。相加后的和數(shù)。2022-7-113輸出變量輸出變量CO 向高位的進(jìn)位數(shù)。向高位的進(jìn)位數(shù)。(2)真值表)真值表ABSCO0000011010101101(3)表達(dá)式表達(dá)式BABABASCO = AB2022-7-114(4)邏輯圖用與非門ABCOBABABABASSCOABAB&12022-7-115用異或門ABCOBAS邏輯符號COSCOABSCOAB&2022-7-1162
9、、 全加器全加器 0 1 1 1 被加數(shù)被加數(shù)+ ) 1 1 0 1 加加 數(shù)數(shù) 0 1 0 0 和和1 1 1 1 進(jìn)位進(jìn)位定義:定義:全加全加 兩個同位的加數(shù)和來自低位的進(jìn)位數(shù)三者相加兩個同位的加數(shù)和來自低位的進(jìn)位數(shù)三者相加全加器全加器 實現(xiàn)全加邏輯的電路。實現(xiàn)全加邏輯的電路。2022-7-117設(shè)計步驟:設(shè)計步驟:(1)輸入變量)輸入變量A i,B i A、B兩個數(shù)的第兩個數(shù)的第 i 位。位。 C i-1 來自低位的進(jìn)位。來自低位的進(jìn)位。 輸出變量輸出變量S i 本位數(shù)和。本位數(shù)和。 C i 向相鄰高位進(jìn)位數(shù)。向相鄰高位進(jìn)位數(shù)。2022-7-118(2)真值表)真值表Ai Bi Ci-1
10、 Si Ci 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 1Si=m(1,2,4,7)Ci=m(3,5,6,7)2022-7-119(3)化簡)化簡01011010Bi Ci-1Ai01 00 01 11 10Si11100100Bi Ci-1Ai01 00 01 11 10Ci2022-7-120(4)表達(dá)式)表達(dá)式ii1iii1iiiii1ii1iiiiiiiBACBA CBACBACBACBACCBAS1iii)(5)邏輯圖)邏輯圖用與非門實現(xiàn)(略)邏輯符號COSiAiBiCi
11、-1CiCI2022-7-121四位并行相加串行進(jìn)位加法器四位并行相加串行進(jìn)位加法器B3A3COCI B2A2COCI B1A1COCI B0A0COCI C3C2C1C0S2S1S0S3二、串行進(jìn)位與并行進(jìn)位二、串行進(jìn)位與并行進(jìn)位1、串行進(jìn)位、串行進(jìn)位2022-7-122 以上加法器可以實現(xiàn)多位二進(jìn)制的并行以上加法器可以實現(xiàn)多位二進(jìn)制的并行加法,即各相應(yīng)位同時進(jìn)行加運(yùn)算,但進(jìn)位加法,即各相應(yīng)位同時進(jìn)行加運(yùn)算,但進(jìn)位要逐位形成,高位的進(jìn)位依賴于低位進(jìn)位的要逐位形成,高位的進(jìn)位依賴于低位進(jìn)位的生成和傳遞,最高位進(jìn)位要等待最低位進(jìn)位生成和傳遞,最高位進(jìn)位要等待最低位進(jìn)位經(jīng)歷各位后才生成,這種產(chǎn)生進(jìn)
12、位的方法稱經(jīng)歷各位后才生成,這種產(chǎn)生進(jìn)位的方法稱為為“串行進(jìn)位串行進(jìn)位”。串行進(jìn)位的并行加法器結(jié)構(gòu)簡單,但速度慢。2022-7-123為了減少進(jìn)位延遲時間,引入了為了減少進(jìn)位延遲時間,引入了“先行進(jìn)位先行進(jìn)位”的概念,的概念,其特點是其特點是n級加法器各級進(jìn)位信號同時形成,故又稱級加法器各級進(jìn)位信號同時形成,故又稱為為“并行進(jìn)位并行進(jìn)位”或或“同時進(jìn)位同時進(jìn)位”。由全加器進(jìn)位表達(dá)式:由全加器進(jìn)位表達(dá)式:ii1iiiii1iiiiBACBABACBA C )()(2、并行進(jìn)位、并行進(jìn)位先行進(jìn)位先行進(jìn)位由此式可見,全加器進(jìn)位Ci是由兩部分組成2022-7-124 當(dāng)本位當(dāng)本位Ai 和和Bi 兩數(shù)均
13、為兩數(shù)均為1時,將產(chǎn)生進(jìn)位時,將產(chǎn)生進(jìn)位Ci ,稱,稱“本地進(jìn)位本地進(jìn)位”。定義:定義: Gi =Ai Bi Gi進(jìn)位生成函數(shù)進(jìn)位生成函數(shù) 當(dāng)本位當(dāng)本位Ai 和和Bi 中有一個為中有一個為1時。若時。若Ci-1 =1,則有進(jìn)位,則有進(jìn)位 Ci,稱,稱“傳遞進(jìn)位傳遞進(jìn)位”。定義:定義: Pi =Ai +Bi 或或Pi =Ai Bi Pi進(jìn)位傳遞函數(shù)進(jìn)位傳遞函數(shù)2022-7-125當(dāng)當(dāng)Pi=1時,可以使從時,可以使從i 1位來的進(jìn)位通過第位來的進(jìn)位通過第 i 位傳遞位傳遞到下一位。到下一位。公式:公式:ii1iiiii1iiiiBACBABACBA C )()(可以改寫為:可以改寫為:122221
14、222011110111C)BA(BACPGCC)BA(BACPGC 2022-7-126由此,可遞推出各位進(jìn)位直接與由此,可遞推出各位進(jìn)位直接與C0 的關(guān)系:的關(guān)系:CBABABABACBABAC022222222122222)()()( )(:或011221222CPGPGCPGC 先行進(jìn)位的優(yōu)點:速度快。先行進(jìn)位的優(yōu)點:速度快。 缺點:線路復(fù)雜。缺點:線路復(fù)雜。2022-7-127(1 1) 組內(nèi)并行,組間串行組內(nèi)并行,組間串行l(wèi) n 位全加器分若干小組;位全加器分若干小組;l 小組中的進(jìn)位同時(并行)產(chǎn)生;小組中的進(jìn)位同時(并行)產(chǎn)生;l 小組與小組之間采用串行進(jìn)位小組與小組之間采用串
15、行進(jìn)位以以 n = 16 為例為例S1613S129S85S412022-7-128(2 2)組內(nèi)并行,組間并行)組內(nèi)并行,組間并行l(wèi) n 位全加器分若干大組,大組中又包含若干小組;位全加器分若干大組,大組中又包含若干小組;l 每個大組中小組的最高位進(jìn)位同時產(chǎn)生;每個大組中小組的最高位進(jìn)位同時產(chǎn)生;l 大組與大組之間采用串行進(jìn)位大組與大組之間采用串行進(jìn)位l 組(小組)內(nèi)并行,組(小組)間并行。組(小組)內(nèi)并行,組(小組)間并行。 可將并行進(jìn)位的概念用于更大位數(shù)的加法器上,可將并行進(jìn)位的概念用于更大位數(shù)的加法器上,隨著加法器位數(shù)的增加,加法電路變得越來越復(fù)雜。隨著加法器位數(shù)的增加,加法電路變得越
16、來越復(fù)雜。2022-7-129三、三、 ALU運(yùn)算部件運(yùn)算部件7418174181ALU方框圖方框圖2022-7-13074181ALU方框圖方框圖2022-7-131邏輯功能表邏輯功能表2022-7-13274181ALU說明說明M端為控制端,端為控制端,M=0時,經(jīng)反相后為時,經(jīng)反相后為1,對進(jìn)位信號,對進(jìn)位信號無影響。輸出結(jié)果無影響。輸出結(jié)果Fi不僅與本位操作數(shù)不僅與本位操作數(shù)Xi 、Yi有關(guān),而有關(guān),而且與向本位的進(jìn)位值且與向本位的進(jìn)位值Ci-1有關(guān),因此,當(dāng)有關(guān),因此,當(dāng)M=0時,時,ALU進(jìn)位算術(shù)運(yùn)算。進(jìn)位算術(shù)運(yùn)算。M=1時,經(jīng)反相后為時,經(jīng)反相后為0,封鎖了各位的進(jìn)位輸出,即,封
17、鎖了各位的進(jìn)位輸出,即 Ci=0,各位運(yùn)算結(jié)果,各位運(yùn)算結(jié)果Fi僅與本位操作數(shù)僅與本位操作數(shù)Xi 、Yi有關(guān),有關(guān), 因此當(dāng)因此當(dāng)M=1時,時,ALU進(jìn)位邏輯運(yùn)算。輸出端進(jìn)位邏輯運(yùn)算。輸出端“A=B”可可 指示兩個操作數(shù)是否相等。指示兩個操作數(shù)是否相等。P、G為兩個本組先行進(jìn)位輸出端,為兩個本組先行進(jìn)位輸出端,P為進(jìn)位傳輸函為進(jìn)位傳輸函 數(shù),數(shù),G為進(jìn)位生成函數(shù)。為進(jìn)位生成函數(shù)。2022-7-1331ALU實現(xiàn)加法操作的原理實現(xiàn)加法操作的原理 當(dāng)當(dāng)S3S2S1S0=HLLH,M=L時,時,ALU實現(xiàn)對實現(xiàn)對 A3A2A1A0和和B3B2B1B0兩個兩個4位二進(jìn)制代碼在位二進(jìn)制代碼在 進(jìn)位輸入進(jìn)
18、位輸入Cn參與下的加法運(yùn)算;參與下的加法運(yùn)算; 即:即:Fi= Ai Bi Cn+i(i=3,2,1,0)。 設(shè)設(shè)Xi = Ai ,Yi = Bi ;可推導(dǎo);可推導(dǎo) Xi、Yi 和和 Ai、Bi的關(guān)系:的關(guān)系:Xi+Yi =AiBiXiYi = Ai+BiXi Yi= Ai Bi2022-7-1342ALU單元實現(xiàn)邏輯運(yùn)算單元實現(xiàn)邏輯運(yùn)算當(dāng)當(dāng)M=H時,由圖時,由圖 可知,進(jìn)位門可知,進(jìn)位門1316均被封鎖,均被封鎖,F(xiàn)i=Pi Gi,位間不發(fā)生關(guān)系,電路執(zhí)行邏輯運(yùn)算。,位間不發(fā)生關(guān)系,電路執(zhí)行邏輯運(yùn)算。 S3S2S1S0=HLLH時,時,F(xiàn)i=Pi Gi= Ai Bi,對輸入數(shù)據(jù),對輸入數(shù)據(jù)A
19、3A2A1A0和和B3B2B1B0執(zhí)行邏輯執(zhí)行邏輯“同或同或”(異或非異或非)操操作。作。 S3S2S1S0=HHHH時,時,F(xiàn)i=Pi Gi= A i,即,即F=A,此時,此時,電路執(zhí)行電路執(zhí)行“傳送傳送A”的操作。的操作。 按以上方法,可全面分析、理解按以上方法,可全面分析、理解74181的邏輯圖和的邏輯圖和真值表。真值表。2022-7-135用四片用四片74181構(gòu)成的構(gòu)成的16位位ALU 下圖下圖 是用是用4片片74181組成的組成的16位位ALU,芯片內(nèi)用先行,芯片內(nèi)用先行 進(jìn)位方法,但片間為串行進(jìn)位。進(jìn)位方法,但片間為串行進(jìn)位。2022-7-1364.2.2 補(bǔ)碼定點加減法運(yùn)算補(bǔ)碼
20、定點加減法運(yùn)算 0+0=0加法規(guī)則加法規(guī)則 0+1=1+0=1 1+1=10 ( 1為向高位的進(jìn)位為向高位的進(jìn)位) 0-0=0 減法規(guī)則減法規(guī)則 0-1=1 (向高位借位(向高位借位1) 1-0=1 1-1=0 00=0乘法規(guī)則乘法規(guī)則 01=10=0 11=1二進(jìn)制的運(yùn)算規(guī)則二進(jìn)制的運(yùn)算規(guī)則2022-7-137 當(dāng)補(bǔ)碼加減運(yùn)算的結(jié)果不超出機(jī)器范圍時,有當(dāng)補(bǔ)碼加減運(yùn)算的結(jié)果不超出機(jī)器范圍時,有以下的以下的運(yùn)算規(guī)則運(yùn)算規(guī)則:(1)參加運(yùn)算的兩個操作數(shù)均用補(bǔ)碼表示。)參加運(yùn)算的兩個操作數(shù)均用補(bǔ)碼表示。(2)符號位作為數(shù)的一部分參加運(yùn)算。)符號位作為數(shù)的一部分參加運(yùn)算。(3)求差時將減數(shù)求補(bǔ),用求和
21、代替求差。)求差時將減數(shù)求補(bǔ),用求和代替求差。(4)運(yùn)算結(jié)果為補(bǔ)碼。)運(yùn)算結(jié)果為補(bǔ)碼。(5)符號位的進(jìn)位為模值,應(yīng)該丟掉。)符號位的進(jìn)位為模值,應(yīng)該丟掉。2022-7-138一、補(bǔ)碼定點加法運(yùn)算一、補(bǔ)碼定點加法運(yùn)算 2mod BABA 2mod BABA n補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)小數(shù):小數(shù):整數(shù):整數(shù): l在補(bǔ)碼制方法下,無論在補(bǔ)碼制方法下,無論A、B是正數(shù)還是負(fù)數(shù),加、是正數(shù)還是負(fù)數(shù),加、 減法運(yùn)算統(tǒng)一采用加法來處理。減法運(yùn)算統(tǒng)一采用加法來處理。lA補(bǔ)補(bǔ)和和B補(bǔ)補(bǔ)的符號位和數(shù)值位一起參與求和運(yùn)算,的符號位和數(shù)值位一起參與求和運(yùn)算, 加、減運(yùn)算結(jié)果的符號位也在求和運(yùn)算中直接得出。加、減運(yùn)算結(jié)
22、果的符號位也在求和運(yùn)算中直接得出。2022-7-139例例1:已知:已知A=+0.10011, B=+0.01001,求,求A+B。解解: A補(bǔ)補(bǔ)+B補(bǔ)補(bǔ)=0.10011+0.01001 =0.11100 A+B補(bǔ)補(bǔ)=0.10011+0.01001補(bǔ)補(bǔ) =0.11100這里這里A和和B均為正數(shù),得到均為正數(shù),得到: A補(bǔ)補(bǔ)+B補(bǔ)補(bǔ)=A+B 補(bǔ)補(bǔ) 符合補(bǔ)碼加法規(guī)律符合補(bǔ)碼加法規(guī)律2022-7-140例例2:已知:已知A=10101,B=-11010;求;求 A + B 設(shè)字長設(shè)字長n=6。解:解:A補(bǔ)補(bǔ)= A =010101 A補(bǔ)補(bǔ)=100110 A+B補(bǔ)補(bǔ)= A補(bǔ)補(bǔ)+ B補(bǔ)補(bǔ)= 010101+
23、 100110 =111011 A + B = -001012022-7-141例例3:設(shè):設(shè) A = 0.1011,B = 0.0101,求,求 A + B補(bǔ)補(bǔ)解:解:A補(bǔ)補(bǔ)B補(bǔ)補(bǔ)A補(bǔ)補(bǔ) + B補(bǔ)補(bǔ)+= 0 . 1 0 1 1= 1 . 1 0 1 1= 1 0 . 0 1 1 0 = A + B補(bǔ)補(bǔ)驗證:驗證:0.1011 0.01010.0110 A + B = 0 . 0 1 1 0丟掉丟掉例例4:設(shè):設(shè) A = 9,B = 5 ;求;求 A + B補(bǔ)補(bǔ)2022-7-142二、補(bǔ)碼定點減法運(yùn)算二、補(bǔ)碼定點減法運(yùn)算 2mod BA)B(ABA 2mod BA)B(ABA n補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)
24、補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)小數(shù):小數(shù):整數(shù):整數(shù): 已知已知B補(bǔ)補(bǔ),求,求B補(bǔ)補(bǔ)的方法是:對的方法是:對B補(bǔ)補(bǔ)各位各位(包括符號包括符號位位)取反,然后在末位加上取反,然后在末位加上1,就可以得到,就可以得到B補(bǔ)補(bǔ)。2022-7-143例例5: A = + 0.1101,B = + 0.0110;求;求 A B解解 : A補(bǔ)補(bǔ)0.1101B補(bǔ)補(bǔ)0.0110 B補(bǔ)補(bǔ)1.1010A補(bǔ)補(bǔ) = 0. 1 1 0 1-B補(bǔ)補(bǔ) = 1. 1 0 1 0+AB補(bǔ)補(bǔ) = 1 0. 0 1 1 1丟掉丟掉AB0.01112022-7-144例例6: 已知已知A補(bǔ)補(bǔ)=01001,B補(bǔ)補(bǔ)=11100 ; 求求A+B補(bǔ)補(bǔ),
25、A-B補(bǔ)補(bǔ)。解:解:- B補(bǔ)補(bǔ)=00100 A+ B補(bǔ)補(bǔ)= (A補(bǔ)補(bǔ)+ B補(bǔ)補(bǔ)) MOD 25 =(01001+11100) MOD 25 =00101 A- B補(bǔ)補(bǔ)= (A補(bǔ)補(bǔ)+ - B補(bǔ)補(bǔ)) MOD 25 = (01001+ 00100) MOD 25 = 011012022-7-145例例7:設(shè)機(jī)器數(shù)字長為:設(shè)機(jī)器數(shù)字長為 8 位(含位(含 1 位符號位)位符號位) 且且 A = 15, B = 24,用補(bǔ)碼求,用補(bǔ)碼求 A B解:解: A = 15 = 0001111 B = 24 = 0011000A補(bǔ)補(bǔ) + B補(bǔ)補(bǔ)= 1, 1110111= A B補(bǔ)補(bǔ)A補(bǔ)補(bǔ)= 0, 0001111
26、 B補(bǔ)補(bǔ)= 1, 1101000B補(bǔ)補(bǔ) = 0, 0011000 A B = 1001 = 92022-7-146練習(xí)練習(xí) : 設(shè)機(jī)器數(shù)字長為設(shè)機(jī)器數(shù)字長為 8 位(含位(含 1 位符號位)位符號位) 且且 A = 97,B = +41,用補(bǔ)碼求,用補(bǔ)碼求 A B答案:答案:A B = + 1110110 = + 118 錯錯2022-7-147 實現(xiàn)補(bǔ)碼加、減法運(yùn)算的邏輯電路實現(xiàn)補(bǔ)碼加、減法運(yùn)算的邏輯電路 加法器的邏輯符號加法器的邏輯符號 減法器的邏輯符號減法器的邏輯符號 2022-7-1480,加(,加(ADD)操作)操作1,減(,減(SUB)操作)操作C0 Bi*Bi C0 n位補(bǔ)碼加法
27、器位補(bǔ)碼加法器 Cn2022-7-149三、三、 數(shù)據(jù)溢出及檢測數(shù)據(jù)溢出及檢測 當(dāng)算術(shù)運(yùn)算的結(jié)果超出了數(shù)碼位數(shù)允許的數(shù)據(jù)當(dāng)算術(shù)運(yùn)算的結(jié)果超出了數(shù)碼位數(shù)允許的數(shù)據(jù)范圍時,就產(chǎn)生溢出。范圍時,就產(chǎn)生溢出。l 對于對于n位的二進(jìn)制碼表示的補(bǔ)碼整數(shù),它可表示的位的二進(jìn)制碼表示的補(bǔ)碼整數(shù),它可表示的 數(shù)據(jù)范圍為數(shù)據(jù)范圍為-2n-12n-1-1。l 若結(jié)果超過了允許表示的最大正數(shù)時,產(chǎn)生的溢出若結(jié)果超過了允許表示的最大正數(shù)時,產(chǎn)生的溢出 稱為上溢;稱為上溢;l 若結(jié)果超過了允許表示的最小負(fù)數(shù)時,產(chǎn)生的溢出若結(jié)果超過了允許表示的最小負(fù)數(shù)時,產(chǎn)生的溢出 稱為下溢。稱為下溢。l 在運(yùn)算器中應(yīng)設(shè)有溢出判別線路和溢
28、出標(biāo)志位。在運(yùn)算器中應(yīng)設(shè)有溢出判別線路和溢出標(biāo)志位。2022-7-150例例8: A0.1011, B0.1001, 求求AB。解解:A補(bǔ)補(bǔ)0.1011 , B補(bǔ)補(bǔ)0.1001 A補(bǔ)補(bǔ)0. 1 0 1 1 B補(bǔ)補(bǔ)0. 1 0 0 1 AB補(bǔ)補(bǔ)1. 0 1 0 0兩正數(shù)相加,結(jié)果為負(fù),顯然錯誤。兩正數(shù)相加,結(jié)果為負(fù),顯然錯誤。(運(yùn)算中出現(xiàn)了(運(yùn)算中出現(xiàn)了“上溢上溢”)2022-7-151例例9: A0.1011,B0.0010,求,求 AB。解解:A補(bǔ)補(bǔ)0.1011 , B補(bǔ)補(bǔ)0.1001 A補(bǔ)補(bǔ) 0. 1 0 1 1 + B補(bǔ)補(bǔ) 0. 0 0 1 0 AB補(bǔ)補(bǔ) 0. 1 1 0 1兩正數(shù)相加,
29、結(jié)果無溢出兩正數(shù)相加,結(jié)果無溢出2022-7-152例例10: A0.1101, B0.1011, 求求 A + B。解解: A補(bǔ)補(bǔ)1.0011 B補(bǔ)補(bǔ)1.0101 A補(bǔ)補(bǔ)1. 0 0 1 1 + B補(bǔ)補(bǔ) 1. 0 1 0 1 AB補(bǔ)補(bǔ)0. 1 0 0 0兩負(fù)數(shù)相加,結(jié)果為正,顯然錯誤。兩負(fù)數(shù)相加,結(jié)果為正,顯然錯誤。(運(yùn)算中出(運(yùn)算中出現(xiàn)了現(xiàn)了“下溢下溢”)2022-7-153例例11: A0.1101, B0.0010,求,求A + B 。解解: A補(bǔ)補(bǔ)1.0011 B補(bǔ)補(bǔ)1.1110 A補(bǔ)補(bǔ)1. 0 0 1 1 + B補(bǔ)補(bǔ) 1. 1 1 1 0 A + B補(bǔ)補(bǔ)1. 0 0 0 1 兩負(fù)數(shù)
30、相加,結(jié)果為負(fù),無兩負(fù)數(shù)相加,結(jié)果為負(fù),無 溢出。溢出。2022-7-154練習(xí)練習(xí)1:已知:已知A補(bǔ)補(bǔ)=01010,B補(bǔ)補(bǔ)=01010,求,求A+B補(bǔ)補(bǔ)練習(xí)練習(xí)2:已知:已知A補(bǔ)補(bǔ)=10010,B補(bǔ)補(bǔ)=00100,求,求A+B補(bǔ)補(bǔ)l 1010 + 1010= 201015 產(chǎn)生上溢產(chǎn)生上溢l -1410 - 410= -18100,表示,表示ExEy; 若若EEy。 當(dāng)當(dāng)ExEy 時時,要通過尾數(shù)的移動以改變要通過尾數(shù)的移動以改變Ex或或Ey,使之,使之 相等。相等。2022-7-178對階原則:小階向大階看齊對階原則:小階向大階看齊 yxEEE Ex= Ey 已對齊已對齊= 0 0ExEy
31、 x 向向 y 看齊看齊 Mx1, Ex1y向向 x 看齊看齊My1, Ey+1 0 ExEy x 向向 y 看齊看齊Mx1, Ex+1y向向 x 看齊看齊 My1, Ey1求階差:求階差:2022-7-179例例1:已知:已知 x =210(0.110100),), y =2100(+0.101011),求),求 x + y =?解:解:x補(bǔ)補(bǔ)=00,010;11.001100 y補(bǔ)補(bǔ)=00,100;00.1010111)對階)對階2110,11100,11010,00100,00010,00EEE yx 補(bǔ)補(bǔ)補(bǔ)補(bǔ) x補(bǔ)補(bǔ)=00,100;11.1100112022-7-1803、尾數(shù)求和、尾
32、數(shù)求和 對階結(jié)束后對階結(jié)束后,即可進(jìn)行尾數(shù)的求和運(yùn)算。不論加法即可進(jìn)行尾數(shù)的求和運(yùn)算。不論加法運(yùn)算還是減法運(yùn)算運(yùn)算還是減法運(yùn)算,都按加法進(jìn)行操作都按加法進(jìn)行操作,其方法與定點其方法與定點加減法運(yùn)算完全一樣。加減法運(yùn)算完全一樣。 11. 1 1 0 0 1 1 x補(bǔ)補(bǔ)的尾數(shù)的尾數(shù) 00. 1 0 1 0 1 1 y補(bǔ)補(bǔ) 的尾數(shù)的尾數(shù) 100. 0 1 1 1 1 0 x + y補(bǔ)補(bǔ)00,100;00.0111102022-7-1814、 規(guī)格化規(guī)格化 尾數(shù)的絕對值小于二進(jìn)制的尾數(shù)的絕對值小于二進(jìn)制的0.1,補(bǔ)碼形式的尾數(shù),補(bǔ)碼形式的尾數(shù)表現(xiàn)為最高數(shù)值位與符號位同值。表現(xiàn)為最高數(shù)值位與符號位同值。
33、 即尾數(shù)出現(xiàn):即尾數(shù)出現(xiàn): 00.0 , 或或 11.1 ,此時必須進(jìn)行左規(guī)處理:尾數(shù)左移一位,階碼減一,此時必須進(jìn)行左規(guī)處理:尾數(shù)左移一位,階碼減一,直到符合要求為止。直到符合要求為止。規(guī)格化后:規(guī)格化后:x + y補(bǔ)補(bǔ)00,011;00.111100規(guī)格化前:規(guī)格化前:x + y補(bǔ)補(bǔ)00,100;00.011110 x + y 23 (0.1111)()(7.5)102022-7-182 在浮點加減運(yùn)算時,尾數(shù)求和的結(jié)果也可以得到在浮點加減運(yùn)算時,尾數(shù)求和的結(jié)果也可以得到01. 或或10. ,即兩符號位不等,這在定點加,即兩符號位不等,這在定點加減法運(yùn)算中表示尾數(shù)溢出,是不允許的。但在浮點
34、運(yùn)減法運(yùn)算中表示尾數(shù)溢出,是不允許的。但在浮點運(yùn)算中,它只是表明尾數(shù)求和結(jié)果的絕對值大于算中,它只是表明尾數(shù)求和結(jié)果的絕對值大于1,此時,此時可以將運(yùn)算結(jié)果右移,以實現(xiàn)向右規(guī)格化處理。可以將運(yùn)算結(jié)果右移,以實現(xiàn)向右規(guī)格化處理。規(guī)則:尾數(shù)右移規(guī)則:尾數(shù)右移1位,階碼加位,階碼加1。2022-7-183例例2:設(shè):設(shè) x20100.11011011, y2100(0.10101100),求,求 xy。 解解:為了便于直觀理解,假設(shè)兩數(shù)均以補(bǔ)碼表示,:為了便于直觀理解,假設(shè)兩數(shù)均以補(bǔ)碼表示,階碼采用雙符號位,尾數(shù)采用單符號位,則它們的階碼采用雙符號位,尾數(shù)采用單符號位,則它們的浮點表示分別為:浮點表
35、示分別為: x補(bǔ)補(bǔ)00 010,0.11011011 y補(bǔ)補(bǔ)00 100,1.010101002022-7-1841) 對階對階2110,11100,11010,00EEEEE yxyx 補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ)補(bǔ) x補(bǔ)補(bǔ)=00,100;0.00110110(11)移出移出2) 尾數(shù)求和尾數(shù)求和 0. 0 0 1 1 0 1 1 0(11) 1. 0 1 0 1 0 1 0 0 1. 1 0 0 0 1 0 1 0(11)x的階碼小,應(yīng)使的階碼小,應(yīng)使Mx右移兩位,右移兩位,Ex加加2。2022-7-1853) 規(guī)格化處理規(guī)格化處理規(guī)格化后:規(guī)格化后:x + y補(bǔ)補(bǔ)00,011; 1. 00010101
36、規(guī)格化前:規(guī)格化前:x + y補(bǔ)補(bǔ)00,100; 1.10001010尾數(shù)運(yùn)算結(jié)果的符號位與最高數(shù)值位同值,應(yīng)進(jìn)行尾數(shù)運(yùn)算結(jié)果的符號位與最高數(shù)值位同值,應(yīng)進(jìn)行左規(guī)格化處理:左規(guī)格化處理:4) 舍入處理舍入處理2022-7-1865、舍入處理、舍入處理 在對階或向右規(guī)格化時,尾數(shù)要向右移位,這樣,在對階或向右規(guī)格化時,尾數(shù)要向右移位,這樣,被右移的尾數(shù)的低位部分會被丟掉,從而造成一定誤被右移的尾數(shù)的低位部分會被丟掉,從而造成一定誤差,因此要進(jìn)行舍入處理。差,因此要進(jìn)行舍入處理。 簡單的舍入方法有兩種:一種是簡單的舍入方法有兩種:一種是“0舍舍1入入”法,即法,即如果右移時被丟掉數(shù)位的最高位為如果
37、右移時被丟掉數(shù)位的最高位為0則舍去,為則舍去,為1則將尾則將尾數(shù)的末位加數(shù)的末位加“1”。另一種是。另一種是“恒置恒置1”法,即只要數(shù)位被法,即只要數(shù)位被移移掉,就在尾數(shù)的末尾恒置掉,就在尾數(shù)的末尾恒置“1”。在。在IEEE754標(biāo)準(zhǔn)中,舍標(biāo)準(zhǔn)中,舍入入處理提供了四種可選方法:處理提供了四種可選方法:2022-7-187就近舍入就近舍入 其實質(zhì)就是通常所說的其實質(zhì)就是通常所說的“四舍五入四舍五入”。例如。例如,尾數(shù)尾數(shù)超超出規(guī)定的出規(guī)定的23位的多余位數(shù)字是位的多余位數(shù)字是10010,多余位的值超過,多余位的值超過規(guī)定的最低有效位值的一半,故最低有效位應(yīng)增規(guī)定的最低有效位值的一半,故最低有效位應(yīng)增1。若。若多余的多余的5位是位是01111,則簡單的截尾即可。對多余的,則簡單的截尾即可。對多余的5位位10000這種特殊情況:這種特殊情況:若最低有效位現(xiàn)為若最低有效位現(xiàn)為0,則截尾;,則截尾;若最低有效位現(xiàn)為若最低有效位現(xiàn)為1,則向上進(jìn)一位使其變?yōu)?,則向上進(jìn)一位使其變?yōu)?。2022-7-188朝朝0舍入舍入 即朝數(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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026云南紅河州瀘西大為焦化有限公司招聘2人考試參考題庫及答案解析
- 2026年臺州溫嶺市第一人民醫(yī)院招聘派遣員工10人筆試備考試題及答案解析
- 2026黑龍江雞西市雞冠區(qū)廉潔征兵筆試備考試題及答案解析
- 2026新疆哈密市建輝國有資產(chǎn)管理有限公司選聘部門主管2人筆試備考試題及答案解析
- 2026年碳資產(chǎn)管理實務(wù)培訓(xùn)
- 2026四川省國投資產(chǎn)托管有限責(zé)任公司招聘1人筆試備考題庫及答案解析
- 2026年六安霍山縣事業(yè)單位公開招聘43人筆試備考題庫及答案解析
- 2026年超導(dǎo)材料的熱力學(xué)與傳熱學(xué)研究
- 2026年1月武夷山職業(yè)學(xué)院人才增補(bǔ)招聘二筆試模擬試題及答案解析
- 武漢市硚口區(qū)公立初中招聘初中教師6人考試備考試題及答案解析
- 虛假貿(mào)易十不準(zhǔn)培訓(xùn)課件
- 中央空調(diào)多聯(lián)機(jī)施工安全管理方案
- 【初中 地理】2025-2026學(xué)年人教版七年級上冊地理期末復(fù)習(xí)提綱
- 2026年撫順師范高等專科學(xué)校單招職業(yè)技能測試題庫附答案
- GB/T 46692.2-2025工作場所環(huán)境用氣體探測器第2部分:有毒氣體探測器的選型、安裝、使用和維護(hù)
- 2025人機(jī)共育向善而為:AI時代的教育變革探索指南
- 2026中國銀聯(lián)招聘面試題及答案
- 影像護(hù)理實踐與技能
- 原始股認(rèn)購協(xié)議書
- 中層管理人員領(lǐng)導(dǎo)力培訓(xùn)教材
- 私人出資入股協(xié)議書
評論
0/150
提交評論