负数的二进制表示
计算机中,int型数占4byte,32位,容易知道,int型正数在计算机中的表示,如int型数7,则7在计算机中表示为
00000000 00000000 00000000 00000111;
那么负数在计算机中如何表示呢?
这涉及到原码、反码、补码的概念,负数在计算机中的表示是其绝对值在计算机中表示的补码。
原码:一个int型数的绝对值的二进制数,称为原码。如
00000000 00000000 00000000 00000111;是7的原码
反码:将原码按位取反,得到的新的二进制数称为原二进制数的反码。如
11111111 11111111 11111111 11111000;是7的反码
补码:反码加1称为补码。如
11111111 11111111 11111111 11111001;是7的补码
则-7在计算机中的表示为7的补码,即为:
11111111 11111111 11111111 11111001
求负数的二进制数表示步骤:
1.求其绝对值的二进制数表示——原码
2.求上面所得原码的反码
3.反码+1即得补码,即为所求