通过变形补码判断补码运算的溢出情况

在某些情况下,补码的运算可能会发生溢出情况,因此引入变形补码的概念,进行判断。

变形补码即用符号位为两位的补码,如[+6] = 00.110,[-6]补 =11.010。 

                   符号位              溢出情况

                      00                  表示正数

                      01                   上溢

                      10                   下溢

                      11                  表示负数

eg:

           X=-0.11011  Y=-0.10101  用变形补码计算X+Y 和X-Y 是否溢出?

          根据补码加减法公式: [X-Y]补 =[X]+[-Y]

          [X]=11.00101    [Y] =11.01011  [-Y]补 = 00.10101

           [X]+[Y]补:

                         11.00101

                       +11.01011

                -------------------------

                         10.10000                                下溢

           [X]+[-Y]补:

                         11.00101 

                       +00.10101

              ----------------------------

                        11.11001                                无溢出

posted @ 2019-01-06 17:04  Jwsmai  阅读(10782)  评论(0编辑  收藏  举报