原码反码补码
计算机里面的数字相加都是以二进制的形式运行的,所以想正确的得到相加的数字得把相应的进制转换为二进制来使用.
原码
就是二进制本身,如果是10进制的数可以使用8421计数法来快速的计算它的二进制
比如:9和6
其二进制在8421中分别为
1001 和 0110
反码
其原码的二进制数全部符号位不变以外全部翻转(即0变1 1变0)
如9的原码是1001,则它的反码则是1110
补码
补码则是反码加1
如9的反码是1110,则它的补码则为1111
+0与-0
正常逻辑来看,+0跟-0并没有实质上的区别,但是在计算机中正负0是两个不一样的,所以我们可以通过补码来了解计算机是如何保存的
+0的原码是0000 0000
-0的原码则是1000 0000
但是我们通过反码与补码可以得到
-0的反码是1111 1111(符号位不变 其他取反)
而它的补码则是1 0000 0000 (反码加1)
这时最开头的1被溢出所以-0的补码0000 0000就是+0的原码
所以计算机中这两者的区别是不大的