原码
原码就是未经更改的码,使用最高位表示符号位,正数为0,负数为1,剩下的数表示该数的绝对值。
例子:
机器字长为 8 位,由于最高位为符号位,所以能够表示的数值在 2^7 - 1 ~ -2^7 + 1
数字 127
表示为 0111 1111
,数字 -127
表示为 1111 1111
反码
反码就是在原码的基础上,符号位不变,各位取反
例子:
数字 127
表示为 0000 0000
,数字 -127
表示 1000 0000
补码
补码在原码的基础上,符号位不变,各位取反,末位加一
例子:
数字 127
表示为 0000 0001
,数字 -127
表示 1000 0001
移码
将补码符号位取反即可
例子:
数字 127
表示为 1000 0001
,数字 -127
表示 0000 0001