文档介绍:本节目标
本节主要学****以下内容:
加法器与进位链
ALU组成
浮点数加减法运算法则
浮点数乘除法运算法则
了解浮点数乘、除法基本运算方法,了解算术逻CLA(Carry Look Ahead),其延迟时间是2ty。
11/75
加法器与ALU
12/75
加法器和ALU
多级先行进位
下面以16位加法器为例,分析两级先行进位加法器设计方法。
13/75
加法器和ALU
ALU电路
为了实现算术/逻辑多功效运算,则必须对全加器(FA)功效进行扩展,详细方法是:先不将输入Ai、Bi和下一位进位数Ci直接进行全加,而是将Ai和Bi先组合成由控制参数S0、S1、S2、S3控制组合函数Xi、Yi,如图3-16所表示,然后再将Xi、Yi和下一位进位数经过全加器进行全加。这么,不一样控制参数能够得到不一样组合函数,因而能够实现各种算术运算和逻辑运算。
14/75
加法器和ALU
1 ALU电路
15/75
加法器和ALU
1 ALU电路
16/75
加法器和ALU
17/75
浮点数运算方法
浮点加减运算
设两浮点数X,Y实现 运算,其中:
均为规格化数。
执行下面五步完成运算。
1.“对阶”--使两数阶码相等(对齐两数小数点)
要对阶,首先求出两数阶码EX和EY之差,即
若 =0,表示两数阶码相等,即EX=EY。
若 >0,表示EX>EY
若 <0,表示EX<EY
当EX EY时,要经过尾数移位来改变EX或EY,使之相等。
18/75
对阶规则:是小阶向大阶看齐(使得误差很小)
若EX=EY,不需对阶。
若EX>EY,则MY右移,每右移1位,EY+1->EY,直至EX=EY为止。
若EX<EY,则MX右移,每右移1位,EX+1->EX,直至EX=EY为止。
尾数右移后,应对尾数进行舍入。
19/75
规则:
(1)假如结果两个符号位值不一样,表示尾数结果溢出,将尾数右移1位,阶码E+1,称为“向右规格化”,简称“右规”。
(2)假如结果两个符号位值相同,表示尾数结果不溢出。但若最高数值位与符号位相同,此时尾数连续左移,直到最高数值位与符号位值不一样为止。同时从E中减去移位位数,这称之为“向左规格化”,简称“左规”。
(尾数用双符号位补码表示)
右规或对阶时尾数低位上数值会移掉,使数值精度受影响,惯用“0”舍“1”入法。当移掉最高位为1时,在尾数末位加1,假如加1后又使尾数溢出,则要进行右规。
阶码下溢,则置结果为机器零。若上溢,则置溢出标志。
20/75
规格化浮点数加减运算流程
21/75
例题: 两浮点数相加,求X+Y。
已知:X=2010 · , y=2100 · (-)
计算过程:
解:X和Y在机器中浮点补码表示形式为(双符号位):
阶符 阶码 数符 尾数
X: 0 0 0 1 0 0 0 1 1 0 1 1 0 1 1
Y: 0 0 1 0 0 1 1 0 1 0 1 0 1 0 0
(1)对阶操作
阶差ΔE=[Ex]补+[-EY]补=00010+11100=11110
X阶码小,Mx右移2位,保留阶码E=00100。
[Mx]补=00 00 110 110 11
下划线上数是右移出去而保留附加位。
(2)尾数相加
[Mx]补+[MY]补=000011011011+1101010100=1**********。
(3)规格化操作
左规,移1位,结果:1100010101 10;阶码-1,E=00011。
22/75
(4)舍入
附加位最高位为1,在所得结果最低位+1。
得新结果:
[M]补=1100010110,
M: - 0.11101010。
(5)判溢出
阶码符号位为00,故不溢出。
最终止果为:
X+Y=2011 · (-0.11101010)
23/75
浮点数乘除法运算(了解)
(1)阶码相加: