一、机器数
1、计算机采用的数值的表达方式就是机器数;
(1)理解
2、计算机对机器数的约定
可能是8位,可能是32位,也可能是其他;这个与不同的环境有关,考试的时候需要注意;
0表示正数(+);1表示负数(-);
如果是整数,小数点位在最低有效数位之后;
如果是小数的话,小数点在符号位之后,最高有效数位之前;
3、举例说明
(1)8个二进制位表示一个固定的数,那么最高位用来表示正负,剩余7位用来表示数值;
二、码制
1、原码
(1)定义
(2)运算
(3)正确运算过程
2、反码
(1)反码的出现原因
(2)原码和反码的转换
-
正数的原码转反码:不变;
-
负数的原码转反码:
符号位不变;数值位按位取反;
按位取反就是原来是0的位变成1,原来是1的地方变成0;
(3)运算
3、补码
(1)补码的出现原因
(2)原码和补码的转换
按位取反就是原来是0的位变成1,原来是1的地方变成0;
(3)反码和补码的转换
(4)运算
(5)补码的引用场景
4、移码
(1)移码的出现原因
-
通过补码表示浮点数时,可能会出现问题;例如
当n无限趋于0的时候,
就等于
,就是不正确的;所以用移码来表示浮点数;
(2)补码和移码的转换
-
正数的移码=补码的符号位取反,其他位不变;
-
负数的移码=补码的符号位取反,其他位不变;
(3)移码的引用场景
三、数表示的范围
1、原码
2、反码
3、补码
-
补码表示的范围的正区间,与原码和反码一致;
-
补码的负区间没有减一,原因是
(1)已知0有两种表示方式:+0=0 0000000;-0=1 00000000;
(2)我们把-0(10000000)用来表示极端的情况,也就是负数的最小的端值,所以负数这一区间内就多出来一个,所以就不用减一了;
4、移码
四、考法:数的表示范围
五、各种码制的特点、应用场景