机器数
机器数就是一个数值在计算机底层用二进制表示的数,小数点隐含(不表示出来,即不占位置)
而这个实际的数值称为真值
码制:机器数的不同编码方法,如原码、反码等
原码
+45的原码:
0 | 0101101 |
---|---|
符号位,0表示正数 | 数值位表示数值的绝对值 |
-45的原码:
1 | 0101101 |
---|---|
符号位,1表示负数 | 数值位表示数值的绝对值 |
对于0有两种编码:
[+0]原=00000000,[-0]原=10000000
反码
+45的反码:
0 | 0101101 |
---|---|
符号位,0表示正数 | 正数的数值位与原码相同 |
-45的反码:
1 | 1010010 |
---|---|
符号位,1表示负数 | 负数的数值位与原码按位取反 |
对于0有两种编码:
[+0]反=00000000,[-0]反=10000000
补码
+45的补码:
0 | 0101101 |
---|---|
符号位,0表示正数 | 正数的数值位与原码相同 |
-45的反码:
1 | 1010011 |
---|---|
符号位,1表示负数 | 负数的数值位与原码按位取反,然后+1 |
对于0有只有一种编码:
[+0]补=[-0]补=00000000
移码
+45的移码:
1 | 0101101 |
---|---|
符号位,1表示 | 移码就是符号位相反的补码 |
-45的反码:
0 | 1010011 |
---|---|
符号位,0表示负数 | 移码就是符号位相反的补码 |
定点数
分为纯整数和纯小数,看小数点位置在最后面还是最前面
浮点数
浮点数的表示格式:
阶符 | 阶码 E | 数符 | 尾数 F |
---|
用科学计数法,如
1011.10101——>写成——>1.01110101 X 23
IEEE 754
表示形式
(-1)S | 2E | (b0b1b2…) |
---|
如:利用IEEE 754标准将176.0625表示为单精度浮点数
- (176.0625)10 = (10110000.0001)2
- 10110000.0001 = 1.01100000001 x 27
- E = 7 + 127 = 134,E等于指数+偏移量。单精度偏移量是127
- (b0b1b2…) = 0.1100000001
- (-1)S = 0,因为是正数
- 可得
0 | 10000110 | 01100000001000000000000 |
---|