(以下均在32bit操作系统环境)
计算机中的符号数有三种表示方法:原码、反码和补码。
1. 正数的原码二进制表示:
例如:12, 0x0000000C
正数的补码为其二进制表示,与原码相同。
2. 负数
负整数的补码,就是其对应正数的二进制表示所有位取反再+1:
例如:-12, 0x0000000C取反得0xFFFFFFF3 + 1 = 0xFFFFFFF4。
另一种理解:-12, 表示为0x8000000C,保留符号位,其余全部取反得0xFFFFFFF3,再加1,得到0xFFFFFFF4。