計算機組成原理(運算器)_第1頁
計算機組成原理(運算器)_第2頁
計算機組成原理(運算器)_第3頁
計算機組成原理(運算器)_第4頁
計算機組成原理(運算器)_第5頁
已閱讀5頁,還剩57頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

計算機組成原理主講:顏俊華運算器2與邏輯或邏輯非邏輯基本邏輯運算常用邏輯運算復合邏輯運算與非或非與或非同或異或常用邏輯運算31、與邏輯開關A開關B燈F斷斷斷合合斷合合滅滅滅亮ABF101101000010邏輯表達式Z=A·B=AB&ABZ邏輯符號真值表ABZABZ當且僅當所有條件全部具備,事件才能發生

基本邏輯運算42、或邏輯ABZ有一個或以上條件具備,結果就會發生ABZ真值表000011101111邏輯表達式:Z=A+B≥1ABZABZ邏輯符號ABZ基本邏輯運算53、非邏輯(反相器)AZR條件不具備時結果反而發生AZ0110真值表邏輯表達式:Y=A=A’1ZAAZ邏輯符號ZAZA基本邏輯運算6與非邏輯表達式:

Z=AB

邏輯符號:或非

邏輯表達式:

Z=A+B

邏輯符號:與或非

邏輯表達式:

Z=AB+CD

邏輯符號:&≥1+圖形中的小圓圈表示非運算復合邏輯運算7異或

當兩個輸入相異時,結果為1。同或

當兩個輸入相同時,結果為1。ABF000011101110異或ABF001010100111同或F=A⊙B=AB=A·B+A·BABF=1ABF=復合邏輯運算8一、單變量邏輯代數公理0-1律互補律重復律變量和常量的關系變量和其自身的關系求反律還原律邏輯代數的常用定理9二、與普通代數相似的公理交換律結合律分配律也適合于同或和異或的情況邏輯代數的常用定理10反演律消因律包含律吸收律三、定理——常用的特殊關系邏輯代數的常用定理算術、邏輯運算部件需解決的關鍵問題:如何以加法器為基礎,實現各種運算處理?解決思路:復雜運算解決方法:在加法器的基礎上,增加移位傳送功能,并選擇輸入控制條件四則運算加法運算用硬件實現算術、邏輯運算功能涉及到的問題:如何構成一位二進制加法單元?如何用n位全加器(連同進位信號傳送邏輯)構成一個n位并行加法器?如何以加法器為核心,通過輸入選擇邏輯擴展為具有多種算術、邏輯功能的ALU?算術、邏輯運算部件加法單元iAiBiCi-1Ci∑i(本位操作數)(低位進位)(本位進位)(本位和)一個輸入為1時,∑i為1,Ci為0;兩個輸入為1時,∑i為0,Ci為1;三個輸入為1時,∑i為1,Ci為1。加法單元(1)邏輯一(全加器)圖3-17(a)∑i

=(Ai+Bi)+Ci-1Ci=AiBi+(Ai+Bi)Ci-1Ci∑iAiBiCi-1加法單元

(2)邏輯二(全加器)圖3-17(b)∑i

=(Ai+Bi)+Ci-1Ci=Ai+Bi+(Ai+Bi)Ci-1Ci∑iAiBiCi-1AiBi加法單元并行加法器特點:各位同時相加影響速度的主要因素:存在著進位信號的傳遞∑8

∑7∑2∑1A8B8A7B7A2B2A1B1

C0111100010111110000所以

Ci=Gi+PiCi-1進位產生函數進位傳遞函數(進位條件)本地進位、絕對進位條件進位、傳遞進位

Ci=AiBi+(Ai+Bi)Ci-1

=AiBi+(Ai+Bi)Ci-1或

Ci=AiBi+(Ai+Bi)Ci-1令

Gi=AiBiPi=Ai+Bi=Ai+Bi=Ai+Bi進位信號基本邏輯

特點:進位信號逐位形成。設n位加法器邏輯式:∑8

∑7∑2∑1A8B8A7B7A2B2A1B1

C0111100010111110000C1=G1+P1C0C2=G2+P2C1Cn=Gn+PnCn-1串行進位特點:各位進位信號同時形成。邏輯式(設n位加法器)

C1=G1+P1C0C2=G2+P2C1

=G2+P2G1+P2P1C0

Cn=Gn+PnCn-1=Gn+PnGn-1+…+PnPn-1…P2P1C0

n+1項并行進位設16位加法器,4位一組,分為4組:4位4位4位4位

第4組第3組第2組第1組C16~C13C12~C9C8~C5C4~C1C0C16C12C8C4分級同時進位組間進位:C4C8C12C16用CICⅡCⅢCⅣ表示

組內進位:C1~C3、C5~C7、C9~C11、C13~C15

分組進位

第1組組內:

C1=G1+P1C0C2=G2+P2G1+P2P1C0C3=G3+P3G2+P3P2G1+P3P2P1C0

第1組組間:

C4=G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0GIPI

所以

CI=GI+PIC0分組進位

第2組組內:

C5=G5+P5CIC6=G6+P6G5+P6P5CIC7=G7+P7G6+P7P6G5+P7P6P5CI

第2組組間:

C8=G8+P8G7+P8P7G6+P8P7P6G5+P8P7P6P5CIGⅡPⅡ

所以CⅡ=GⅡ+PⅡCI

第3組組內:

C9=G9+P9CⅡC10=G10+P10G9+P10P9CⅡC11=G11+P11G10+P11P10G9+P11P10P9CⅡ

第3組組間:

C12=G12+P12G11+P12P11G10+P12P11P10G9+P12P11P10P9CⅡGⅢPⅢ

所以CⅢ=GⅢ+PⅢ

CⅡ

第4組組內:

C13=G13+P13CⅢC14=G14+P14G13+P14P13CⅢC15=G15+P15G14+P15P14G13+P15P14P13CⅢ

第4組組間:

C16=G16+P16G15+P16P15G14+P16P15P14G13+P16P15P14P13CⅢGⅣPⅣ所以

CⅣ=GⅣ+PⅣCⅢ

各組間進位邏輯CI=GI+PIC0CⅡ=GⅡ+PⅡCICⅢ=GⅢ+PⅢ

CⅡCⅣ=GⅣ+PⅣCⅢ=GⅡ+PⅡGI

+PⅡPIC0

=GⅢ+PⅢ

GⅡ+PⅢ

PⅡGI

+PⅢ

PⅡPIC0

=GⅣ+PⅣ

GⅢ+PⅣPⅢ

GⅡ

+

PⅣ

PⅢ

PⅡGI

+PⅣPⅢ

PⅡPIC0

∑41~∑85~∑129~∑1613~組間進位鏈A8....A5

B8....B5A4....A1

B4....B1A12....A9

B12....B9A16....A13

B16....B13CoCⅣGⅣPⅣGⅢPⅢGⅡPⅡGI

PI

C3~1C15~13C11~9C7~5

CⅢ

CⅡCI

進位傳遞過程Ai、Bi、C0A8....A5

B8....B5A4....A1

B4....B1A12....A9

B12....B9A16....A13

B16....B13CoGⅣ、PⅣ….GI、PI、GⅣPⅣGⅢPⅢGⅡPⅡGI

PI

C3~1CⅣ

CⅢ

CⅡCI

CⅣ、CⅢ、CⅡ、CI

C15~13C11~9C7~5

C15~13、C11~9、C7~5

C3~1

要求:寫出任一進位的串、并邏輯式。例:已知操作數Ai、Bi,初始進位C0。試寫出C6的邏輯式。串行進位:C6=并行進位:C6=分級同時進位:C6=G6+P6G5+P6P5G4+….+P6P5…P1C0CI=GI+PIC0G6+P6C5G6+P6G5+P6P5CIGI=G4+P4G3+P4P3G2+P4P3P2G1PI=P4P3P2P1Gi=AiBiPi=Ai⊕Bi算術、邏輯運算部件ALU:將N位加法器、并行進位鏈、輸入選擇門等集成在一塊芯片上。例如:SN741814位片ALU一位邏輯:1位加法器:求和Fi、進位Ci1位輸入選擇器:操作數Ai、Bi,

控制信號S3、S2、S1、S01個公共控制門:

M=0算術運算,M=1邏輯運算Ci

S3S2BiS1S0Ai

FiMCi-1xiYi算術、邏輯運算部件多位邏輯(四位片SN74181)4位全加器4位并行進位鏈4位選擇器1個控制門算術、邏輯運算部件SN74181外特性數據輸入端:A0~A3、B3~B0結果輸出:F0~F3功能選擇控制:MS0S1S2S3最低位進位輸入:Cn最高位進位輸出:Cn+4構成組間串行進位小組進位輔助函數:G、P構成組間并行進位算術、邏輯運算部件ALU運算功能SN74181功能表P100表3-2ALU進位邏輯組間串行168C12168C8168C4168C0C16Cn+4Cn算術、邏輯運算部件組間并行1715874181CIII1715874181CII1715874181CI1715874181C074182并行進位鏈GIPIPG運算器組織具有多路選擇器的運算器移位器ALU多路選擇器多路選擇器R0RnR0...RnR0...Rn內部總線(單向)特點:R各自獨立;可同時向ALU提供兩個操作數;采用單向內總線。運算器組織具有輸入鎖存器的運算器移位器ALU鎖存器鎖存器內部總線(雙向)R0Rn通用寄存器組(小型存儲器)特點:單口RAM不能同時向ALU提供兩個操作數;用鎖存器暫存操作數;采用雙向內總線。運算器組織位片式運算器移位器ALU多路選擇器多路選擇器DO

RAMDi

B地址A地址CnDBDAG、P控制信息Cn+4乘商寄存器444444444444運算器組織特點:用雙口RAM(兩地址端、兩數據端)作通用寄存器組,可同時提供數據用多路選擇器作輸入邏輯,不需暫存操作數;ALU增加乘、除功能,用乘商寄存器存放乘數、乘積或商。設計算機字長為8,它表示有符號數的范圍是多少?若該計算機計算90+100,會發生什么樣的情況?38機器數有原、反、補碼,計算機加減運算采用什么碼制更方便?問題與討論定點加減法運算定點加法運算

[X+Y]補=[X]補+[Y]補進行補碼加法運算,若高位有進位,則自動丟掉,不影響計算結果1.補碼加法運算的基本關系式定點加法運算2)X=3Y=–23+(-2)=1

00011

1111000001(+1補碼)3)X=–3Y=–2(-3)+(-2)=-5

11101

111101

11011(–5補碼)1)X=3Y=23+2=5

00011

0001000101(+5補碼)例.求(X+Y)補丟掉定點減法運算1.補碼減法運算的基本關系式

(X-Y)補=X補+(-Y)補把減法運算換算成加法運算,在計算機中只需要設置加法器就可以了,而不需要單獨設置減法器即將減數變補后與被減數相加。Y補(–Y)補:將Y變補將Y補連同符號位一起變反加1定點減法運算1)X=3Y=23-2=1

00011

11110100001(1補碼)例.求(X-Y)補3)X=–3Y=–2(-3)-(-2)=-1

11101

0001011111(–1補碼)2)X=3Y=-23-(-2)=5

00011

0001000101(+5補碼)定點減法運算注意:某數的補碼表示與某數變補的區別。例.10101原

11011補碼表示10011補

01101變補

10101原

11011

00101原

00101補碼表示符號位不變;

00101原

0010100011補

1110110011補

0110100011補

11101變補連同符號位一起取反加1補碼的機器負數定點加減運算操作數用補碼表示,符號位參加運算結果為補碼表示,符號位指示結果正負X補+Y補X補+(-Y)補ADDSUB總結:補碼加減運算流程溢出判斷溢出判斷方法在什么情況下可能產生溢出?

例.數A有4位尾數,1位符號SA

數B有4位尾數,1位符號SB

符號位參加運算

結果符號Sf

符號位進位Cf

尾數最高位進位C溢出判斷溢出判斷?Sf=00001100010(1)A=3B=23+2:00101(5)A=10B=710+7:010100011110001Sf=1Sf=1Sf=0Sf=0Sf=1(2)A=-3B=-2-3+(-2):1110111110111110(6)A=-10B=-7-10+(-7):1011111011011001(3)A=6B=-46+(-4):1000100011011100(4)A=-6B=4-6+4:111101101000100正溢負溢結論:兩個相同符號數相加(包括不同符號數相減),而運算結果的符號與原數據符號相反時,產生溢出;溢出判斷硬件判斷邏輯一(SA、SB與Sf的關系)(1)A=10B=710+7:01010

0011110001(2)A=-10B=-7-10+(-7):011111011011001溢出=SASBSfSASfSB溢出判斷硬件判斷邏輯二(Cf與C的關系)正確0001100010(1)A=3B=23+2:00101(2)A=10B=710+7:010100011110001正溢正確負溢(3)A=-3B=-2-3+(-2):110111110111110(4)A=-10B=-7-10+(-7):011111011011001Cf=0C=0Cf=0C=1Cf=1C=1Cf=1C=01111溢出=CfC溢出判斷硬件判斷邏輯三(雙符號位)(1)3+2:正確00001100001000

0101(2)10+7:001010000111010001正溢正確負溢(3)-3+(-2):110111111101111110(4)-10+(-7):101111110110111001第一符號位Sf1第二符號位Sf21.硬件判斷邏輯一(SA、SB與Sf的關系)2.硬件判斷邏輯二(Cf與C的關系)溢出=Sf1Sf23.硬件判斷邏輯三(雙符號位)溢出=CfC溢出=SASBSfSASfSB

0

0結果為正

0

1結果正溢出

1

0結果負溢出

1

1結果為負溢出判斷溢出判斷練習題用補碼計算X補+Y補=?指出是否溢出1)X補=0.110011Y補=0.1011012)X補=1.110011Y補=1.101101用補碼計算X補-Y補=?指出是否溢出1)X補=0.110110Y補=1.0100112)X補=1.100011Y補=0.110100移位操作邏輯移位邏輯移位:數碼位置變化,數值不變算術移位:數碼位置變化,數值變化,符號位不變10001111循環左移:01001111算術左移:1

001

1111011110(-15)原(-30)原移位操作

正數原碼/補碼移位規則:數符不變,空位補0a、單符號位:0

011101110

b、雙符號位:001110

0001110

0111011100

001110000111011100

111001100

溢出!0

001100111001110

011100

001110移位操作

負數補碼移位規則:數符不變,左移時空位補0,右移時空位補1a、單符號位:1

101110110

b、雙符號位:110110

1110111

1011101100

110110111011101101

011011100

溢出!1

11011

1011110110

10

1100

110110計算機中的數據要參與運算前,常擴展成雙符號位再運算,在溢出發生時方便移位補救!1、雙符號位的作用是?2、計算機什么情況下要使用到移位?浮點加減運算浮點運算的實現浮點運算比定點運算復雜,硬件成本高軟件子程序實現浮點運算浮點處理器CPU內部配有專門的浮點運算部件,包含相應的浮點運算指令N=M×REEfE1……E2EmM1MfM2……Mn階碼E階符尾數M數符浮點加減運算1.浮點加減運算步驟:(1)檢測能否簡化操作:

判操作數是否為0尾數為0階碼下溢(2)對階:小數點實際位置對齊1)對階規則:小階向大階對齊。2×0.10012×0.1101232×0.010032×0.110132)對階操作:小階階碼增大,尾數右移。

若:AE>BE,則BE+1BM,直到BE=AE若:AE<BE,則AE+1AM,直到BE=AE浮點加減運算(3)尾數加減.

1)11.0001+00.100111.1010

2)00.0101+00.1101AM+BMAM(4)結果規格化

M<1/201.0010M>1應左移規格化(左規)應右移規格化(右規)浮點加減運算例題1:A=(0.1101)·21

,B=(-0.1010)·23,求X+Y=?其浮點數的格式:補碼表示,

溫馨提示

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

評論

0/150

提交評論