版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三章、运算方法与运算器,谭志虎 (Tiger Stan),2010-10,计算机组成原理 Slide 2,Outline,定点补码加/减法运算 定点乘法运算 定点除法运算 浮点运算 运算器组织 运算器部件举例,计算机组成原理 Slide 3,3.1 定点补码加/减法运算,运算方法及实现 补码加减法运算公式 溢出检测 补码加减法逻辑实现 快速加法器,计算机组成原理 Slide 4,补码加减法的实现,X + Y补= X补+ Y补 两数和的补码等于两数补码之和 X Y 补= X补+ -Y补=X补- Y补 两数差的补码等于两数补码之差 减法变加法,关键是求-Y补 -Y补= Y补补 对 Y补逐位取反,
2、 再在最低位加 1,计算机组成原理 Slide 5,补码加法公式证明,X + Y补= X补+ Y补 x0 y0 (无需证明) x0 y0 (2/3证明相同) x0 y0 只需证明2/4两种情况即可,计算机组成原理 Slide 6,(2) x0 y0,x补=x y补=2+y x补+ y补=x+2+y=2+(x+y) 当x+y0时 2+(x+y)2 进位位舍去 x补+ y补=2+(x+y)=x+y (mod 2) =x+y补 (mod 2),计算机组成原理 Slide 7,(4) x0 y0,x+y2 2+(2+x+y) mod 2 =(2+x+y) =x + y补 mod 2,计算机组成原理 S
3、lide 8,补码减法公式证明,X-Y补= X补 - Y补 ? X-Y补= X补+ -Y补 (加法公式) -Y补=- Y补 ? -Y补+ Y补= Y+(-Y)补=0补=0 故-Y补=- Y补成立 -Y补= Y补补 X-Y补= X补+ -Y补= X补 - Y补,计算机组成原理 Slide 9,补码加法的几种情况,正正得负,正溢出,负负得正,负溢出,正常结果,符号位进位舍去,正常结果,计算机如何识别运算结果是否溢出,计算机组成原理 Slide 10,单符号数溢出检测1,正正得负 负负得正 结果溢出 设两数符号位为f0 f1 和数符号位fs,计算机组成原理 Slide 11,单符号数溢出检测2,符号
4、位进位Cf,最高位进位Cn,Cf = 0,Cn = 0,Cf = 1,Cn = 1,Cf = 0,Cn = 1,Cf = 1,Cn = 0,计算机组成原理 Slide 12,单符号数溢出检测2,溢出信号V对应的真值表,计算机组成原理 Slide 13,双符号数溢出检测,非正常符号位,溢出,符号位进位舍去,正常结果,正常结果,非正常符号位,溢出,计算机组成原理 Slide 14,双符号数溢出检测,溢出信号V对应的真值表,计算机组成原理 Slide 15,二进制加法运算,Xn-1 X2 X1 X0,Yn-1 Y2 Y1 Y0,+,?n-1 ?2 ?1 ?0,各位逐位相加,进位从右至左传递 首先要考
5、虑一位加法,然后考虑进位链,计算机组成原理 Slide 16,一位加法逻辑电路实现,S=XY,0 1 = 1 1 0 = 1 1 1 = 0 0 0 = 0,一个异或门即可实现自动实现一位加法,算术运算变成逻辑电路,计算机组成原理 Slide 17,带进位链的一位全加器,计算机组成原理 Slide 18,一位全加器逻辑实现,3级门电路延迟 3T,计算机组成原理 Slide 19,多位加法器,N位加法器包含n个全加器 将多个一位全加器串联 低位进位输出连接到高位进位输入,计算机组成原理 Slide 20,单符号位补码加法器电路(ripple carry adder),符 号 位,行波进位加法器,
6、时间延迟?,计算机组成原理 Slide 21,串行加法器时间延迟rippler carry adder,n个加法器延迟,3n个门电路延迟,符 号 位,计算机组成原理 Slide 22,双符号位补码加法器电路,符 号 位,计算机组成原理 Slide 23,补码减法电路实现,补码减法可以转换为加法 X补 - Y补= X补+ -Y补 实现减法的关键是求减数Y乘以负一的补码 方法:将Y补连同符号位一起逐位取反末位加一 -Y补= Y补补 S=X补 + Y补 S= X补 + -Y补,计算机组成原理 Slide 24,加法器的改造,C0,FAn-1,Sn-1,FAn-2,FA1,FA0,Cn1,Cn2,C1
7、,Sn-2,S1,S0,Cn,Xn-1,Yn-1,Xn-2,Yn-2,X1,Y1,X0,Y0,符 号 位,Input ?,加法器 输入Y补作加法, 如果输入-Y 补则作减法,计算机组成原理 Slide 25,加法器的改造.,引入控制位 M M=0时作加法,送入加法器的是Y补 M=1时作减法,送入加法器的是-Y补,计算机组成原理 Slide 25,-Y补= Y补补,计算机组成原理 Slide 26,单符号补码加/减器电路实现,方式控制M,M0加M=1减,C0,FAn-1,Sn-1,FAn-2,FA1,FA0,Cn1,Cn2,C1,Sn-2,S1,S0,Cn,Xn-1,Yn-1,Xn-2,Yn-2
8、,X1,Y1,X0,Y0,减法的避免减少了逻辑器件 控制信号M如何产生?,符 号 位,计算机组成原理 Slide 27,串行加法器时间延迟rippler carry adder,n个加法器延迟,3n个门电路延迟,符 号 位,计算机组成原理 Slide 28,快速加法器,能否提前产生各位的进位输入 使得各位的加法运算能并行起来 即可提高多位加法器运算速度,计算机组成原理 Slide 29,并行加法器进位链(carry-lookahead),Si=XiYiCi-1,Ci=,Ci-1,(XiYi),+,XiYi,Gi = XiYi Pi=XiYi,Gi 进位生成函数 Generate,Pi 进位传递
9、函数 Propagate,Ci = Gi+PiCi-1,计算机组成原理 Slide 30,并行加法器进位链,Cn = XnYn+(XnYn)Cn-1=Gn+PnCn-1,Cn-1 = Xn-1Yn-1+(Xn-1Yn-1)Cn-2=Gn-1+Pn-1Cn-2,C1 = X1Y1+(X1Y1)C0=G1+P1C0,高位的运算依赖于低位运算的进位输入 计算不能并行 能否提前得到当前位的进位输入?,计算机组成原理 Slide 31,并行加法器进位链,C1 = X1Y1+(X1Y1)C0=G1+P1C0,C2 = X2Y2+(X2Y2) C1=G2+P2C1 =G2+P2(G1+P1C0) =G2+P
10、2G1+P2P1C0,C3 = X3Y3+(X3Y3) C2=G3+P3C2 =G3+P3(G2+P2G1+P2P1C0) =G3+P3G2+P3P2G1+P3P2P1C0,计算机组成原理 Slide 32,并行加法器进位链,Cn-1 = Gn-1+Pn-1Gn-2+Pn-1Pn-2Gn-3 +Pn Pn-1 P1C0,Cn = Gn+PnGn-1+PnPn-1Gn-2 +PnPn-1Pn-2Gn-3 + PnPn-1 Pn-2 P1C0 位数越长,进位链电路复杂度越高 通常按照4位一组进行分组运算,仅仅与最低位的进位输入有关,计算机组成原理 Slide 33,Generate & Propa
11、gate,C1 = G1+P1C0,C2 = G2+P2G1+P2P1C0,计算机组成原理 Slide 34,与门异或门电路,计算机组成原理 Slide 35,先行进位电路carry lookahead,c0,&,1,1,计算机组成原理 Slide 36,串行加法器时间延迟rippler carry adder,n个加法器延迟,3n个门电路延迟,符 号 位,S4=X4Y4C3 S3=X3Y3C2 S2=X2Y2C1 S1=X1Y1C0 进位信号得到后,所有运算只需要一级异或门即可完成,计算机组成原理 Slide 37,计算机组成原理 Slide 38,四位快速加法器,=1,=1,=1,=1,S
12、1,计算机组成原理 Slide 39,16位加法器,组内先行进位 组间串行进位 可否组间并行?,计算机组成原理 Slide 40,成组进位,C4 = G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0 G4 *= G4+P4G3+P4P3G2+P4P3P2G1 成组进位发生输出 P4 *= P4P3P2P1 成组进位传递函数 C4 = G4*+P4*C0 C1 = G1 +P1 C0 比较原相邻位进位公式,计算机组成原理 Slide 41,成组进位,C4 = G4*+P4*C0 C8 =G8*+P8* (G4*+P4*C4) =G8*+P8*G4*+P8*P4*C0 C16
13、=G16*+P16*G12*+P16*P12*G8* +P16*P12*P8*G4*+P16*P12*P8*P4*C0 用4组 P* G*作输入,即可复用原先行进位电路 产生组间先行进位信号,计算机组成原理 Slide 42,Group generate & propagate,g1,g2,p2,g3,p3,g4,p4,G*,P4 *= P4P3P2P1 G4 *= G4+P4G3+P4P3G2+P4P3P2G1 C4 = G4*+P4*C0,计算机组成原理 Slide 43,两级先行进位电路,G,4,P,4,C,13,C,14,C,15,G,12,P,12,G,13,P,13,G,14,P,
14、14,G,15,P,15,C,16,&,&,&,&,&,&,&,&,*,*,&,&,1,1,1,1,计算机组成原理 Slide 44,先行进位电路CLA74182,输入: P4G4 P3G3 P2G2 P1G1 C0 输出: 先行进位输出C4 C3 C2 C1 成组进位传送输出P* 成组进位发生输出G* Cn = Gn+PnGn-1+PnPn-1Gn-2 +PnPn-1Pn-2Gn-3 +Pn Pn-1 P1C0 Gi = XiYi Pi=XiYi,计算机组成原理 Slide 45,先行进位电路CLA74182,计算机组成原理 Slide 46,先行进位的多功能算术/逻辑运算单元,ALU741
15、81,计算机组成原理 Slide 48,16位组内先行进位,组间先行进位,计算机组成原理 Slide 49,32位先行进位系统,计算机组成原理 Slide 50,64位先行进位系统,16片74181 ,5片74182芯片,计算机组成原理 Slide 51,先行进位电路时间延迟分析,Cn = Gn+PnGn-1+PnPn-1Gn-2 +Pn Pn-1 P1C0 假设所有门电路均按照2输入 Gn 需要1个门电路延迟 PnGn-1 需要2个门电路延迟 PnPn-1Gn-2 需要3个门电路延迟 Pn Pn-1 P1C0 需要n+1个门电路延迟 Cn 需要n+2个门电路延迟,计算机组成原理 Slide
16、52,快速加法器电路延迟,产生先行进位信号需要(n+2)T S=XYC 需要(n+2)T+T 故总的运算时间为(n+3)T 串行行波加法器的延迟为3nT 加速比 3n/(n+3) n较大时,速度提高约三倍 n=4时,提高1.7倍,计算机组成原理 Slide 53,Outline,定点补码加/减法运算 定点乘法运算 定点除法运算 浮点运算 运算器组织 运算器部件举例,计算机组成原理 Slide 54,3.2 定点乘法运算,原码乘法运算方法 原码乘法运算实现 补码乘法运算方法 补码乘法运算实现,计算机组成原理 Slide 55,乘法运算实现方法,设置专用乘法器实现乘法运算 执行乘法运算子程序实现乘
17、法运算 借助加法器配置相应部件实现乘法运算,计算机组成原理 Slide 56,符号位直接异或即可得到乘积的符号 仅仅需要考虑其数值部分的计算 以定点小数为例进行讨论,多位原码乘法,p9,p3,p2,p1,p0,p9p8p7p6p5p4p3p2p1p0,a4a3a2a1a0,x b4b3b2b1b0,先计算相加数,然后逐列相加,二进制多位乘法运算,计算机组成原理 Slide 58,一位乘法逻辑实现,R=X*Y,一个与门即可实现一位乘法,1 1 = 1 1 0 = 0 0 1 = 0 0 0 = 0,计算机组成原理 Slide 59,相加数产生部件,经过一级门电路延迟,即可得到所有的相加数,p8,
18、p2,p1,p0,+,+,+,+,+,横向进位的5位无符号数阵列乘法器电路,a3b2,a2b2,a1b2,a0b2,a4b2,a3b3,a2b3,a1b3,a0b3,a4b3,a3b4,a2b4,a1b4,a0b4,a4b4,a4b0,a3b0,a2b0,a1b0,a0b0,p8,p2,p1,p0,+,0,+,0,+,+,a1b1,a0b1,a3b1,a2b1,a4b1,+,+,p6,+,+,p7,+,p3,0,+,+,+,p4,0,+,+,+,+,p5,+,+,+,+,0,COUT,COUT,COUT,p9,COUT,横向进位的5位无符号数阵列乘法器电路,a3b2,a2b2,a1b2,a0b
19、2,a4b2,a3b3,a2b3,a1b3,a0b3,a4b3,a3b4,a2b4,a1b4,a0b4,a4b4,a4b0,a3b0,a2b0,a1b0,a0b0,p8,p2,p1,p0,0,0,a1b1,a0b1,a3b1,a2b1,a4b1,p6,p7,p3,0,p4,0,p5,0,COUT,COUT,COUT,p9,COUT,横向进位无符号数阵列乘法器电路时延分析,a3b2,a2b2,a1b2,a0b2,a4b2,a3b3,a2b3,a1b3,a0b3,a4b3,a3b4,a2b4,a1b4,a0b4,a4b4,a4b0,a3b0,a2b0,a1b0,a0b0,p8,p2,p1,p0,1
20、,0,3,0,7,9,a1b1,a0b1,a3b1,a2b1,a4b1,2,B,p6,8,9,p7,A,p3,0,3,4,5,p4,0,4,5,6,7,p5,6,7,8,5,0,COUT,COUT,COUT,p9,COUT,n+2(n-2)*3T+T (3n-4)*3T + T,横向进位无符号数阵列乘法器电路时延分析,p8,p2,p1,p0,5位无符号数阵列乘法器电路,+,+,+,p6,p7,p3,p4,p5,p9,p9p8p7p6p5p4p3p2p1p0,a4a3a2a1a0,x b4b3b2b1b0,p8,p2,p1,p0,a3b2,a2b2,a1b2,a0b2,a4b2,a3b3,a2b
21、3,a1b3,a0b3,a4b3,a4b0,a3b0,a2b0,a1b0,a0b0,a4b1,p6,p7,p3,p4,p5,p9,0,a3b4,a2b4,a0b4,a4b4,a1b4,4*5个全加器, 8个全加器延迟,计算机组成原理 Slide 66,原码阵列乘法器时间延迟,n(n-1)个FA 延迟时间 (n-1)FA +(n-1)FA 每一个FA包含三级门电路延迟T 故总延迟为 2(n-1)*3T T(相加数产生时间),计算机组成原理 Slide 67,nn位原码乘法器框图,相加数产生部件,A = af. an1 an2a1 a0,B = bf. bn1 bn2b1 b0,nn乘法阵列,=1
22、,.,计算机组成原理 Slide 68,补码乘法器原理图,B补 = bf. bn1 b1 b0,乘法阵列(同前nn阵列),2n位求补器,数值同原码,相加数,积绝对值,(补码乘积),=1,A补 = af. an1 a1 a0,相加数产生电路(同前),n位求补器,n位求补器,计算机组成原理 Slide 69,乘法运算实现方法,设置专用乘法器实现乘法运算 执行乘法运算子程序实现乘法运算 借助加法器配置相应部件实现乘法运算 原码一位乘法的运算方法与逻辑实现 补码一位乘法的运算方法与逻辑实现,p8,p2,p1,p0,横向进位的5位无符号数阵列乘法器电路,p8,p2,p1,p0,0,0,0,0,0,横向进
23、位的5位无符号数阵列乘法器电路,p8,p2,p1,p0,0,0,0,0,0,=0+XYn,+=XYn-1, 右移一位,+=XYn-2, 右移一位,+=XYn-3, 右移一位,横向进位的5位无符号数阵列乘法器电路,计算机组成原理 Slide 73,部分积累加的数学表示,部分积=XYn 部分积=XYn-1+XYn 2-1 部分积=XYn-2+(XYn-1+XYn*2-1)2-1 =XYn-2+XYn-12-1 + XYn2-2 =XY12-1+XY22-2+XYn2-n X*Y=XY12-1+Y22-2+Yn2-n,开始,i = 0, 0,Yn=1, + 0 , + X , Y右移一位 i+1i,
24、i = n,X0Y0P0,结束,Y,N,N,Y,原码乘法 算法流程图,加法次数,n次 作完加法,一定移位 符号位单独计算,计算机组成原理 Slide 75,例子,已知X=0.1101 Y=-0.1011 计算X原Y原,00.1101 00.0110 00.1101,部分积,01.0011 1 00.1001 11 00.0000,00.1001 11 00.0100 111 00.1101,01.0001 111 00.1000 1111,乘数,1,Y0,Y0.1011,Y0.101,Y0.10,判断位,说明,P0=0 Y4=1,+|X|,右移一位得P1 Y4=1,+ |X|,右移一位得P2
25、Y4=0,+0,右移一位得P3 Y4=1,+ |X|,右移一位得P4=|X|Y|,+,Y0.1,+,+,计算机组成原理 Slide 77,乘法运算实现方法,设置专用乘法器实现乘法运算 执行乘法运算子程序实现乘法运算 借助加法器配置相应部件实现乘法运算 原码一位乘法的运算方法与逻辑实现 补码一位乘法的运算方法与逻辑实现,计算机组成原理 Slide 78,原码乘法逻辑结构,&,R0 部分积,计 数 器,= +Yn|X| = /2,控制电路,部分积R0,乘数R1,Yn 判断位,|X|= 0.1101, |Y|= 0.1011,+ |X|,+ |X|,+ 0,+ |X|,计算机组成原理 Slide 8
26、0,部分积累加的数学表示,部分积=XYn 部分积=XYn-1+XYn*2-1 部分积=XYn-2+(XYn-1+XYn*2-1)2-1 =XYn-2+XYn-12-1 + XYn*2-2 =XY1*2-1+XY2*2-2+XYn*2-n X*Y= XY1*2-1+Y2*2-2+Yn*2-n,计算机组成原理 Slide 81,补码一位乘法,1) 被乘数X符号任意,乘数Y为正 X补=X0.X1X2Xn Y补=0.Y1Y2Yn X补Y补=(2+X) Y =(2n+1+X) Y =2n+1Y+XY =2 2n 0.Y1Y2Yn+XY =2(Y1Y2Yn)+XY =2+XY =X Y补 X Y补= X补
27、Y补,计算机组成原理 Slide 82,补码一位乘法,1) 被乘数X符号任意,乘数Y为负数 X补=X0.X1X2Xn Y补=1.Y1Y2Yn Y补=2+Y Y= Y补-2 =0.Y1Y2Yn-1 X Y补=X (0.Y1Y2Yn - 1) 补 =X 0.Y1Y2Yn - X 补 =X 0.Y1Y2Yn补- X补 =X补 0.Y1Y2Yn- X补 =X补 0.Y1Y2Yn - Y0X 补,计算机组成原理 Slide 83,补码一位乘法,X Y补=X补 0.Y1Y2Yn-Y0 X 补 =X补(-Y0+0.Y1Y2Yn) =X补(-Y0+Y12-1+Y22-2+Yn 2-n) =X补-Y0+(Y1-
28、Y12-1)+(Y22-1-Y22-2)+(Yn2-n+1-Yn2-n) = X补Y1-Y0+(Y2-Y1)2-1+(Y3-Y2)2-2+(0-Yn)2-n XY= X Y12-1 + Y22-2 + Yn2-n 原码乘法,开始,i = 0, 0 , + X补, + X补,结束,01,10,00或11,Y,N,不变,、Y补右移一位 i + 1,加法次数,n+1次 最后一次加法不需移位 符号位直接参与运算,计算机组成原理 Slide 85,例子,已知X=1.0101 Y=1.0011计算X补Y补 解: -X补=0.1011,00.1011 00.0101 00.0000,部分积,00.0101
29、1 00.0010 11 11.0101,11. 0111 11 11.1011 111 00.0000,11.1011 111 11.1101 1111 00.1011,乘数,1,1.0,1.00110,1.0011,1.001,判断位,说明,Yn+1=0 YnYn+1=10,加X补,右移一位得P1 末2位为11,+ 0,右移一位得P2 末2位为01 +X补,右移一位得P3 末2位为00 +0,右移一位得P4 末2位为10 -X补,+,1.00,+,+,+,00.1000 1111,计算机组成原理 Slide 87,补码一位乘法逻辑结构,R2 被乘数X补,R0部分积,= +(Yn+1-Yn)
30、X补 = /2,计算机组成原理 Slide 88,3.3 用补码一位乘法计算X补 Y补,X =0.10111,Y = 0.10101 解: X补=1.01001, -X补=0.10111 Y补= 0.10101,部分积R0,乘数R1,判断位YnYn+1,X补=1.01001, -X补=0.10111 Y补= 0.10101,+ -X补,+ X补,+ -X补,+ X补,+ -X补,+ X补,部分积R0,乘数R1,判断位YnYn+1,计算机组成原理 Slide 91,定点补码加/减法运算 定点乘法运算 定点除法运算 浮点运算 运算器组织 运算器部件举例,Outline,计算机组成原理 Slide
31、92,定点除法运算,原码除法运算方法 原码除法运算实现,计算机组成原理 Slide 93,0.10010 0.01011 0.001110 0.001011 0.0000110 0.0001011 0.00001100 0.00001011 0.00000001,不够减,商上零,,-,-,-,-,0.1011,0.1101,除数右移1位,够减,减除数,商上1,除数右移1位,够减,减除数,商上1,除数右移1位,不够减,商上零,除数右移1位,够减,减除数,商上1,定点除法手工计算,计算机组成原理 Slide 94,恢复余数除法,如何判断是否够减 原码运算判断借位 利用补码作减法,判断余数符号即可
32、余数为负数时,必须恢复余数 即将余数加除数,恢复成原来的值。 求下一位商,必须将余数左移一位,再与除数比较 比较,上商(恢复),余数移位,再比较, 直到获得商所需要的位数为止。,00.1001 01.0010 11.0101,被除数/余数,00.0111 00.1110 11.0101,00.0011 00.0110 11.0101,商,上商位,说明,减Y比较,左移一位 减Y比较,余数R00,商=0 加Y恢复余数,余数R10,商上1 左移一位 减Y比较,R20,商上1 左移一位 减Y比较,R30,商上0 加Y恢复,左移一位 减Y比较,R40,商上1,11.1110 00.1011,00. 00
33、01,00.0110 00.1100 11.0101,11.1011 00.1011,0.110,0.1101,0.110,0.1,0,0,0.11,+Y补,+Y补,+Y补,+Y补,+,+,计算机组成原理 Slide 96,恢复余数乘法问题,需要进行恢复余数的操作 恢复余数的操作次数不确定,故运算时间不固定,影响除法速度。 实际应用通常采用不恢复余数除法。,计算机组成原理 Slide 97,不恢复余数法,设某次余数为Ri,求下位商需要将Ri左移一位,然后减去除数进行比较,此过程可表为 2Ri-Y 当结果小于0时商上0。此时,为获得下一位商需要恢复余数,左移一位,减Y比较三步操作,即 (2Ri-
34、Y)+Y= 2Ri 2*2Ri -Y = 4Ri Y = 2*(2Ri-Y)+Y,11.1110 11.1100 00.1011,被除数/余数,00.0111 00.1110 11.0101,00.0011 00.0110 11.0101,商,上商位,说明,减Y比较,R0 0 商上零 左移一位 加Y比较,R10,商上1 左移一位,减Y比较,R20,商上1 左移一位,减Y比较,R30 商上零 左移一位,加Y比较,R40,商上1,00. 0001,11.1011 11.0110 00.1011,0.110,0.1101,0.1,0,0.11,+Y补,+Y补,+Y补,+Y补,计算机组成原理 Slid
35、e 99,上商位,R0,控制逻辑,R2 除数,R0 被除数/余数,R1 商,不恢复余数除法逻辑结构,=1,计数器,计算机组成原理 Slide 100,Example,3.4 用原码不恢复余数法计算X补Y补。 (1) X = 0.10101,Y = 0.11011 -Y补=1.00101,11.11010 11.10100 00.11011,被除数/余数,00.01111 00.11110 11.00101,00.00011 00.00110 11.00101,商,上商位,说明,减Y比较,R0 0 商上零 左移一位 加Y比较,R10,商上1 左移一位,减Y比较,R20,商上1 左移一位,减Y比较
36、,R30 商上零 左移一位,加Y比较,R40,商上0 左移一位,加Y比较,11. 10001 11. 00010 00.11011,11.01011 10.10110 00.11011,0.110,0.1100,0.1,0,0.11,+Y补,+Y补,+Y补,+Y补,+Y补,11. 11101,0.11000,R50 商上零,X = 00.10101, Y = 00.11011 -Y补=11.00101,+ -Y补,+ Y补,+ -Y补,+ -Y补,+ Y补,+ Y补,+ Y补,被除数/余数R0,商R1,上商位Q0,计算机组成原理 Slide 104,可控制加/减法(CAS)单元,0.,Q1,Q
37、2,P=1,原码阵列除法器,1.,0.,Q1,Q2,P=1,原码阵列除法器延迟,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,CAS,1.,计算机组成原理 Slide 107,除法器延迟,n*n个CAS延迟单元 每一个CAS包含4级门电路延迟T 故总延迟为 (n*n) 4T,移码加减法运算,X移+ X移= X+Y补 2n+(2n+x+y) X移- Y移= X-Y补 (2n+x-y)-2n,计算机组成原理 Slide 108,补码一位除法,计算机组成原
38、理 Slide 109,计算机组成原理 Slide 110,移码加/减器电路实现,方式控制M,M0加M=1减,C0,FAn-1,FA1,FA0,Cn2,C1,Sn,S1,S0,Xf,X1,Y1,X0,Y0,溢出位V,=1,计算机组成原理 Slide 111,定点补码加/减法运算 定点乘法运算 定点除法运算 浮点运算 运算器组织 运算器部件举例,Outline,计算机组成原理 Slide 112,浮点加减法运算,计算X+Y=? 求解: 如:Ex=Ey S=2Ex (Mx+My) 如:ExEy ?,假设:,计算机组成原理 Slide 113,对阶,对阶(使得小数部分可以按位权值按位相加) 大阶对小
39、阶还是小阶对大阶? 210*(0.11000)+28*(0.00110) 大阶对小阶 210*(0.11000)-28*(11.000) 11.000+0.00110 ? 小阶对大阶 28*(0.00110)-210*(0.00001) 0.00001+0.11000=0.11001 对阶过程应该是小阶对大阶 尾数右移,计算机组成原理 Slide 114,尾数运算,如:Ex=Ey S=2Ex(Mx+My),计算机组成原理 Slide 115,运算结果规格化,210*(0.11000) 也可表示为 211*(0.01100) 同一个浮点数的编码唯一, 为提高精度,尾数不为零的时,要求其绝对值大于
40、1/2,即尾数最高有效位为1,否则要以修改阶码的方式同时左右移小数点,使其变成这一要求的表示形式,这个过程称为浮点数的规格化 将运算结果右移以实现规格化表示称为向右规格化,右归 将运算结果左移以实现规格化表示称为向左规格化,左归,计算机组成原理 Slide 116,规格化形式,规格化数形式 0.1XXXX -0.1XXXX 补码规格化形式 00.1XXXX 11.0XXXX 补码非规格化数 00.0XXXX 11.1XXXX 01.XXXXX 10.XXXXX,定点数规格化区间,计算机组成原理 Slide 117,0,2-1,1,-2-1,-1,计算机组成原理 Slide 118,00.0XX
41、XX - 00.1XXX0 左规 11.1XXXX - 11.0XXX0 左规 01.XXXXX - 00.1XXXX 右规 10.XXXXX - 11.0XXXX 右规,连符号位一起移位,规格化方法,计算机在表示浮点数时,通常进行向左规格化处理 上溢的时候,右归, 下溢的时候,左归,计算机组成原理 Slide 119,右归规则,非正常符号位,溢出,符号位进位舍去,正常结果,正常结果,非正常符号位,溢出,计算机组成原理 Slide 120,X=11.1001 -X=00.0110+1=00.0111 左移一位 2X=11.0010 or 2X=11.0011 ? -2X=00.1110 2X=
42、11.0001+1 =11.0010,左归规则,计算机组成原理 Slide 121,向左规格化,尾数左移一位, 阶码减1,尾数左移两位, 阶码减2,计算机组成原理 Slide 122,尾数连同符号位 进位位右移一位, 阶码加1,尾数连同符号位 进位位右移一位, 阶码加1,向右规格化,计算机组成原理 Slide 123,规格化规则小结,运算结果产生溢出时,必须进行右归 如变形补码结果出现10.XX或者01.XXX 如运算结果出现0.0XXX或1.1XX必须左归 左归时最低数据有效位补0 右归时连同符号位进位位一起右移 左归时,阶码作减法,右归时,阶码作加法,计算机组成原理 Slide 124,舍
43、入处理,右规后低位部分丢失了一位, 这会对数产生一定的误差,0舍1入法,如被丢的最高数位为0,舍去, 如为1,则将尾数末位加一,截去法,舍入处理,计算机组成原理 Slide 125,向零舍入,1,1,1,2,2,向上舍入,2,2,2,3,3,向下舍入,1,1,1,2,2,向偶数舍入,1,2,2,2,3,-1,-1,-2,-2,计算机组成原理 Slide 126,溢出处理,尾数上溢 右归 尾数下溢 左归 阶码正上溢 |X| 阶码负上溢 |X|0,计算机组成原理 Slide 127,浮点数加减法,五个基本步骤 对阶 尾数求和 规格化(左规,右规) 舍入(截去、0舍1入) 检查溢出,例1 两浮点数x
44、 = 21010.11011011,y = 2111(-0.10101100)。假设尾数在计算机中以补码表示,可存储10位尾数,2位符号位,阶码以补码表示,双符号位,求x+y。,解:将x,y转换成浮点数据格式 x浮 = 00 101, 00.11011011 Y浮 = 00 111, 11.01010011+1 00 111, 11.01010100 步骤1:对阶,阶差为Ex-Ey=Ex补+-Ey补 -Ey补=11000111001 Ex-Ey001011100111110 (000011)000102 0 Ex-Ey0 ExEy 小阶对大阶, X阶码加2 X尾数右移2位,解:将x,y转换成浮
45、点数据格式 x浮 = 00 101, 00.11011011 Y浮 = 00 111, 11.01010011+1 00 111, 11.01010100 步骤1:对阶,阶差为Ex-Ey=Ex补+-Ey补 Ex-Ey2 0 Ex-Ey0 ExEy 小阶对大阶, X阶码加2 X尾数右移2位 x浮 = 00 111, 00.00110110(11) 步骤2:尾数求和 X+Y浮 = 00 111, 00.00110110(11 ) + 00 111, 11.01010100 = 00 111, 11.10001010(11),步骤2:尾数求和 X+Y浮 = 00 111, 00.00110110(1
46、1) + 00 111, 11.01010100 = 00 111, 11.10001010(11) 步骤3:计算结果规格化 X+Y浮 为非规格化数,左归一位, 阶码减一, 00110, 11.00010101(1) 步骤4:舍入处理 X+Y浮 = 00 110, 11.00010110 (0舍1如法) X+Y浮 = 00 110, 11.00010101 (截去法) 步骤5:溢出判断 无溢出 X+Y浮 = 2110 x (-00.11101011),例2. 两浮点数 x = 2010.1101, y = 210(-0.1010)。 假设尾数在计算机中以补码表示,可存储6位尾数,2位符号位,阶
47、码以补码表示,双符号位,采用0舍1入,求x+y。,解:将x,y转换成浮点数据格式 x浮 = 00 01, 00.1101 Y浮 = 00 10, 11.0101+1 00 10, 11.0110 步骤1:对阶,阶差为Ex-Ey=Ex补+-Ey补 -Ey补=110111110 Ex-Ey000111101111 (000001)000011 0 Ex-Ey0 ExEy 小阶对大阶, X阶码加1 X尾数右移1位,解:将x,y转换成浮点数据格式 x浮 = 00 01, 00.1101 Y浮 = 00 10, 11.0101+1 00 10, 11.0110 步骤1:对阶,阶差为Ex-Ey=Ex补+-
48、Ey补 Ex-Ey1 0 ExEy 小阶对大阶, X阶码加1 X尾数右移1位 x浮=00 10, 00.0110(1) 步骤2:尾数求和 X+Y浮 = 00 10, 00.0110(1) + 00 10, 11.0110 = 00 10, 11.1100(1),步骤2:尾数求和 X+Y浮 = 00 10, 00.0110(1) + 00 10, 11.0110 = 00 10, 11.1100(1) 步骤3:计算结果规格化 X+Y浮 为非规格化数,左归两位, 阶码减二, =0000, 11.0010(0) 步骤4:舍入处理 X+Y浮 = 0000, 11.0010(0) (0舍1如法) X+Y
49、浮 = 0000, 11.0010(0) (截去法) 步骤5:溢出判断 无溢出 X+Y浮 = 2000 x (-0.1110),计算机组成原理 Slide 134,特殊例子,X=2111 0.11111111,Y=2111 0.10000001 X浮 = 0111, 0.1111 1111 + Y浮 = 0111, 0.1000 0001 X+Y浮 = 0111, 1.1000 0000 尾数运算溢出,右归, 连同符号位进位位一起右移一位,阶码加1 X+Y浮 = 1000, 0.1100 0000 阶码溢出,运算结果正溢出,计算机组成原理 Slide 135,特殊例子,X=2 -1000 -0.11110000,Y=2 -1000 0.10000001 X浮 = 1000, 1.0001 0000 + Y浮 = 1000, 0.1000 0001 X+Y浮 = 1000, 1.1001 0001 非规格化数,左归, 左移一位,阶码减1 X+Y浮 = 1000, 0.11001 000 1000+1111=0111 =7 阶码负溢出, 运算结果下溢,计算机组成原理 Slide 136,浮点数乘法运算,如:X=2m Mx Y=2n My X Y=2m Mx ( 2n My )
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年江苏省盐城市高职单招综合素质考试试题及答案解析
- 2026文化和旅游部直属事业单位故宫博物院招聘应届毕业生52人(一)笔试备考题库及答案解析
- 吉水县两山资源控股有限公司及下属子公司2026年第一批面向社会公开招聘【8人】笔试备考题库及答案解析
- 2026北京四中雄安校区招聘教职人员22人笔试备考题库及答案解析
- 2026湖北黄石市大冶市国有企事业单位人才引进56人笔试备考试题及答案解析
- 2026中南电力设计院注册环境影响评价工程师招聘3人(湖北)笔试模拟试题及答案解析
- 2026中国聚变能源有限公司春季校园招聘笔试备考题库及答案解析
- 车队管理智能调度方案
- 2026湖北武汉市华中农业大学动科动医学院科研助理岗位人员招聘笔试模拟试题及答案解析
- 2026河北张家口桥东区东风小学招聘英语志愿者教师笔试备考试题及答案解析
- 经典500家庭经典杂文
- 1.2 国内外网络空间安全发展战略
- 2023年湖南省长沙县初中学生学科核心素养竞赛物理试题(含答案)
- 东北大学最优化方法全部课件
- 人教新课标六年级数学下册全册大单元教学设计(表格式)
- RB/T 219-2017检验检测机构资质认定能力评价司法鉴定机构要求
- 电视节目策划学胡智峰
- 中东局势与大国关系
- 2023年黑龙江农业职业技术学院单招综合素质考试笔试题库及答案解析
- 倍压电路的电压跌落
- 柴油发电机组装安装施工方案三篇
评论
0/150
提交评论