负数的表示方法

负数的表示方法

在计算机中,有符号数的最高位表示符号位。如果最高位为1则表示这是一个负数。

负数在计算机中是以补码的形式保存的。

负数的补码生成:负数的绝对值的原码取反后加1。

比如: EF 表示的是-17

分析过程:

1)EF的二进制表示为 1110 1111。由于它的最高位为1,所以是一个负数。

2)去掉符号位后 110 1111就是它的绝对值的补码。

3)根据补码的表示法:取反 + 1,来按逆序推导它的原码如下:

    3.1)先-1后为:110 1110

    3.2)再取反后为:001 0001

故001 0001 就是该负数的绝对值17 ,从而该负数为-17。

 

1     110 1111
       110 1111
-1
----------------
       110 1110
取反
----------------
       001 0001

你可能感兴趣的:(C#)