一:无符号原码
无符号数:整个机器字长的全部二进制均为数值位,没有符号位,相当于数的绝对值。
表示范围:
8位二进制数:2的8次方不同的状态
0000 0000 ------1111 1111 =1 0000 0000 -1
0 ---------------------255 =2的8次方-1
n位的无符号数表示范围为:0 ------2的n次方-1
有符号数
+156D =0 1001 1100B
-156D = 1 1001 1100B
真值 机器数
定点表示
小数点:隐含存储(定点数:事先约定;浮点数:按规则浮动)
定点小数:
定点整数
二:原码
+156D = 0 1001 1100B
- 156D = 1 1001 1100B
- 真值 机器数
约定:用X表示真值,用[X]原表示原码,[x]补表示补码,[X]表示反码,[X]移表示移码
纯小数原码
纯整数原码
运算:
00001110 +10001110
根据最高位调整成相应的无符号数运算
------>0 0001110 -0 0001110
三: 补码反码移码
加法运算
四:补码
对于正数:补码与原码表示相同,[X]补=[X]原
对于负数:原码符号位不变,数值位按位取反,末位加1,(即所谓“取反加1")
此规则同样适用于由[X]补求[X]原
纯整数补码:
纯小数补码
五:反码
对于正数,反码与原码的表示相同,[X]反=[X]原
对于负数,原码符号位不变,数值部分按位取反。
此规则同样适用于由[X]反求[X]原
表示范围:与原码一样
纯整数反码:
原补反相互转换。
六:移码
移码就是在真值X上加上一个常数(偏置值),通常这个常数为2的n次方。