正码(原码)、反码和补码

2021-01-25  本文已影响0人  我想静静看着你装B

正码(原码)

最高位表示符号位,0表示正数,1表示负数,其余位表示为整数的二进制数。

例:
32767
0111 1111 1111 1111
-32767
1000 0000 0000 0001

2147483647
0111 1111 1111 1111 1111 1111 1111 1111
-2147483647
1000 0000 0000 0000 0000 0000 0000 0001

反码

正数的反码与正码相同,负数的反码反码是在正码的基础上对除符号位之外的位取反,0变1,1变0.

例:
32767
0111 1111 1111 1111
-32767
1111 1111 1111 1110

2147483647
0111 1111 1111 1111 1111 1111 1111 1111
-2147483647
1111 1111 1111 1111 1111 1111 1111 1110

补码

正数的补码与正码相同,负数的补码是在反码的基础上,对最低位+1.

例:
32767
0111 1111 1111 1111
-32767
1111 1111 1111 1111

2147483647
0111 1111 1111 1111 1111 1111 1111 1111
-2147483647
1111 1111 1111 1111 1111 1111 1111 1111

上一篇 下一篇

猜你喜欢

热点阅读