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

正码(原码)

最高位表示符号位,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

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容