原码
在二进制数值前加入一个bit
,0
表示正数,1
表示负数,如:
[+1101]原 = 0,1101
[-1101]原 = 1,1101
[+0.11]原 = 0.11
[-0.11]原 = 1.11
反码
根据X的原码求反码:
X为正数,则:[X]反 = [X]原
X为负数,则:[X]反 = [X]原 符号位不变,数值部分按位取反
补码
根据X的原码求补码:
X为正数,则:[X]补 = [X]原
X为负数,则:[X]补= [X]原 符号位不变、数值部分按位取反、最后最低位后加1(进位)
移码
对于一个k位的定点整数,移码为2^k+整数
的二进制表示,等于补码符号位取反
不要问小数,移码_百度百科 (baidu.com)