原码就是十进制数字的二进制表现形式。例如 int类型的数字,占用4个字节,一个字节又是8位,所以int类型的数字占用32位。
示例:10的原码
00000000 00000000 00000000 00001010
负数原码的最高位表示符号位,1表示为负数
示例:-10的原码
10000000 00000000 00000000 00001010
正数的反码与原码一样。
例如上面10反码为:
00000000 00000000 00000000 00001010
负数的反码为最高位符号位保持不变,其余为取反。
例如上面的-10的反码为:
11111111 11111111 11111111 11110101
正数的补码同原码、反码相同,保持不变。
例如上面10反码为:
00000000 00000000 00000000 00001010
负数的补码是其反码加1,变成补码。
例如上面的-10的补码为:
11111111 11111111 11111111 11110110
对于正数而言,原码、反码、补码三码相同。
对于负数而言,最高位表示符号位,反码为符号位保持不变,其余位取反。补码为反码加上1。
计算机存储时,则是以补码的形式进行存储数字。