初学者通常都不懂什么是原码,反码与补码,而现在的书有很少讲到原码,反码,补码的问题,所以转了这个帖子,供大家学习。
以8位有符号整数为例子:原码:若X为正数 ,则最高位(符号位)为0,其余按照二进制数排列若X为负数,则最高位为1,后面和正数原码一样例:+7: 00000111-7: 10000111+0: 00000000-0: 10000000反码:若X为正数,则反码与原码相同若X为负数,则将原码除符号位取反(就是这个位置1变成0,0变成1)例:-7: 11111000补码: 反码 +1 例: -7: 1111001