源码、反码和补码

数值的表示方式--原码、反码和补码

     原码:最高位位符号位,其余各位为数值本身的绝对值

    反码:

        正数:反码与原码相同

        负数:符号位为1,其余位对原码取反

    补码:

        正数:原码、反码、补码相同

        负数:最高位为1,其余位为原码取反,再对整个输加1

 97     0110 0001 0110 0001 0110 0001

-31    1001 1111 1110 0000 1110 0001

    0 0000 0000 0000 0000 0000 0000

   -0 1000 0000 1111 1111 0000 0000

   在计算机系统中,数值一律用补码来表示(存储)。

主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。

采用原码表示法简单易懂,但它的最大缺点是加法运算复杂。这是因为,当两数相加时,如果是同号则数值相加;如果是异号,则要进行减法。而在进行减法时,还要比较绝对值的大小,然后大数减去小数,最后还要给结果选择符号。为了解决这些矛盾,人们找到了本部吗表示法。

猜你喜欢

转载自blog.csdn.net/simple_man_just/article/details/80207511