原码:十进制转二进制。(10:0000 1010)
- 正数的原码:按照绝对值大小转换成的二进制数(10: 0000 1010)
- 负数的原码:按照绝对值大小转换成的二进制数,然后最高位补1(-10: 1000 1010)
- 正数的反码:与原码相同(10:0000 1010)
- 负数的反码:除符号位外(首位不变)各位取反(-10: 1111 0101)
- 正数的补码:与原码相同(10:0000 1010)
- 负数的补码:除符号位外各位取反,然后在最后一位加1(-10: 1111 0101+1=1111 0110)
注:补码加1:01+1=10 (二进制加法,同十进制9+1=10)
0100+1=0101
0111+1=1000
PC计算机上二进制的正负用的是补码表示,
例如:32位的,-5 原码:00000000 00000000 00000000 00000101
反码:11111111 11111111 11111111 11111010
补码:11111111 11111111 11111111 11111011
所以-5最终在PC的表达式是 11111111 11111111 11111111 11111011 ,十六进制表示为0xFFFFFFFB