一:原码,反码,补码的概念
原码:是计算机对数字的二进制的表示方法,第一位为符号位,0为正数,1为负数。
反码:符号位不变,对原码其余位数取反(0变1,1变0)后得到的即为反码。
补码:反码加1,得到补码。
例:
需要注意的是,正整数的原码反码补码都相同。
在计算机中,都以补码来储存,当用到的时候计算机会把补码重新转换为原码来表示一个数。
-------------------------------------------------------------------------------------------------------------------------------
二:反码,补码的由来
如果我们用原码进行1加-1的运算:
0000 0001
+1000 0001
1000 0010
诚然,结果为-2,证明这个结果是错误的。
于是反码诞生了,接下来我们用1与-1的反码进行运算:
0000 0001
+1111 1110
1111 1111
这次的真值显然是对了,我们再使用别的数相加减进行验证