【原创】【原创】从“-8转换为二进制是多少”来理解什么是原码、反码、补码

blogdaren 2021-01-01 抢沙发 176人次

问题背景:

-8 转换为二进制是多少?

解决方案:

第一步:将 8 转换为二进制得到: 

00000000 00000000 00000000 00001000

第二步:由于-8是负数,所以可得其原码为:

10000000 00000000 00000000 00001000

第三步:根据原码继续取其反码从而得到二进制:

11111111 11111111 11111111 11110111

第四步:根据反码继续取其补码得到最终的二进制:

11111111 11111111 11111111 11111000

相关概念:

1、正数的的反码和补码都是正数本身,所以原码、反码、补码其实都是针对负数而言的;

2、原码:用第一位表示符号 0代表正符号、1代表负符号),其余位表示值

3、反码:是在其原码的基础上,符号位保持不变,其余各位取反;

4、补码:是在其原码的基础上,符号位保持不变,其余各位取反,最后+1 (即在反码的基础上+1)

5、计算机内存中的二进制数是以补码形式存储的;

6、那么补码+1 或者 补码-1 是如何进行补码加减法运算的呢? 

答:补码的加减法是采用二进制加减法,假设补码为1,则1+1=10、1-1=0;只要记着十进制是逢10进1,二进制是逢2进1。

版权声明:除非注明,本文由( blogdaren )原创,转载请保留文章出处。

本文链接:【原创】【原创】从“-8转换为二进制是多少”来理解什么是原码、反码、补码

发表评论:

您的昵称:
电子邮件:
个人主页:

Free Web Hosting