原码、反码和补码,这些你都知道吗()

首先说明一下,正数的原码、反码和补码都是一样的,即原码=反码=补码
所以接下来我们主要说负数的原码、反码和补码之间的关系
1.原码 原码就是符号位加上真值的绝对值,即用第一位(最高位)表示符号,其余位表示值。比如:

1的原码00000000000000000000000000000001 5的原码00000000000000000000000000000101 -1的原码10000000000000000000000000000001

2.反码(对负数) 反码等于原码符号位不变,其余位取反(即0变1,1变0)
-3原码 10000000000000000000000000000011 反码 11111111111111111111111111111100 -21原码 10000000000000000000000000010101 反码 11111111111111111111111111101010

3.补码(对负数) 补码=反码+1
-3原码 10000000000000000000000000000011 反码 11111111111111111111111111111100 补码 11111111111111111111111111111101-21原码 10000000000000000000000000010101 反码 11111111111111111111111111101010 补码 11111111111111111111111111101011

4.运算 【原码、反码和补码,这些你都知道吗()】计算机在进行计算时,是补码之间进行运算,最终以原码表示结果。
如2 +(-5)= -3的运算
2的原码00000000000000000000000000000010 反码00000000000000000000000000000010 补码00000000000000000000000000000010 -5的原码 10000000000000000000000000000101 反码 11111111111111111111111111111010 补码 111111111111111111111111111110112+(-5)的运算(补码之间) 00000000000000000000000000000010(2的补码) 11111111111111111111111111111011(-5的补码) 结果 11111111111111111111111111111101(2-5的补码形式) 11111111111111111111111111111100(2-5的补码-1得到反码) 10000000000000000000000000000011(2-5的反码符号位不变,其余位取反得到原码) 10000000000000000000000000000011等于-3(原码表示的就是最终运算结果)

    推荐阅读