源码:
一个数绝对值的二进制表示,如果是+ 最高位(最左侧的位)改0
如果是- 最高位(最左侧的位)改1
反码:
正:正数的反码等于源码
负:除符号位不变,其他位逐位取反(1-->0,0--->1)
补码:
正:正数的补码等于源码
负:1)反码+1
2)在源码基础上符号位不变,其他各位取反,最后在+1
//64位机器下
// int 类型占用 4个字节,每个字节为8
// 计算机储存1使用32位的二进制数码,储存的是补码
+1 源码:00000000000000000000000000000001
反码 == 源码 == 补码
-1 源码 10000000000000000000000000000001
反码 11111111111111111111111111111110
补码 11111111111111111111111111111111 |