二进制正负数的原码反码补码之间的转化

Posted Red_Code

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二进制正负数的原码反码补码之间的转化相关的知识,希望对你有一定的参考价值。

首先,计算机都是使用二进制的补码进行计算。

 

1、正数的二进制原码、反码、补码都是相同的

 

2、负数的二进制原码:先计算该负数绝对值的二进制。之后对其每个数“取反”,然后加一。

比如-32

第一步:32(10)=00100000(2)

第二步:求反:11011111

第三步:加1:11100000

 

3、负数的反码:等于原码的最高位不变,其余取反。

比如-32

原码为:11100000

反码为:10011111

 

4、负数的补码:等于原码的最高位不变,其余取反,然后加一。

比如-32

第一步,原码为:11100000

第二步,最高位不变取反:10011111

第三步,加一得补码:10100000

 

以上是关于二进制正负数的原码反码补码之间的转化的主要内容,如果未能解决你的问题,请参考以下文章

11)C语言之正负数的原码反码补码

二进制的原码、补码、反码详解

原码,反码,补码浅谈

进制之间的互相转换,进制的原码,反码,补码

计算机补码原码问题

二进制的原码补码和反码