补码是反码加1,把实际数据转换为2进制数据,然后把1变0,0变1,结果为反码。再加1就是补码。
如:10101010
反码为:01010101
补码为:01010110
也可以认为:从右到左第一个1为分界线,左边按位取反,右边(含本身)不变
正数的补码是其原值
例如占一个字节的10,二进制为0 000 1010, 第一位0表示+,
补码也是0 000 1010
负数的话-10, 二进制为1 000 1010, 第一位1 表示-,
补码求法为 :符号位不变,其余取反再加1
1 000 1010 取反 1 111 0101
再加1: 1 111 0110