浮点数加减运算(转)_补码


​浮点数规格化参考​

浮点数加减运算(转)_规格化处理_02

看一个浮点数加法运算的实例。

  假定 X=2 ^010 * 0.11011011, Y=2 ^100 * (-0.10101100)则它们的浮点表示分别为

         阶符  阶码  数符  尾数

     [X]浮 = 00   010   00  11011011

     [Y]浮 = 00   100   11  01010100

           补码      补码

执行X+Y的过程如下:
  (1)求阶差和对阶
   △ E = Ex-Ey = [Ex]浮 +[-Ey]浮 = 00 010 + 11 100 = 11 110即△E 为-2,
X的阶码小,应使Mx右移两位,Ex加2, 得[X]浮 = 00 100 00 00110110 11

(2)尾数求和
     00 00110110
    + 11 01010100
    
     11 10001010   
(3)规格化处理
  结果的符号位与最高数值位同值,应执行左规处理,结果为11 00010101 10, 阶码为00 011。

(4)舍入处理
  采用0舍1入法处理,则有
     11 00010101
    +      1
    
     11 00010110

(5)判溢出
  阶码符号位为00.不溢出,故得最终结果为
  X+Y = 2 ^ ( 011) *(-0.11101010)

阶符   阶码  数符  尾数
00 011 10 11101010