机器数及特点
-
真值
-
机器数
-
原码
-
特点
- 1.表示简单
- 2.运算复杂
- 3.0的表示不唯一 ,有正0和负0
-
-
反码
-
正数
- 就是正数的原码
-
负数
- 除了符号位,其他按位取反
-
特点
- 1.表示相对复杂
- 2.运算相比原码简单,符号位参与运算,只需要设置加法器,但符号位需要加到最低位去
- 3.0的表示不唯一
-
-
补码
-
正数
- 就是本身
-
负数
- 除了符号位,其余位取反,在加上1就是补码,也就是反码+1
-
特点
-
1.相对原码复杂
-
2.运算简单,只需要设置加法器
-
为什么可以这样?
- 通过模将 减法变为加法
-
-
互为补码的两个数的绝对值相加 等于 模
- 就比如 9和-3在模为12的系统下,他们就互为补码
-
-
模
-
符号位进位后的权值
- 理解的话就是 一个周期之中的最大值,如时钟:模就是12
-
-
-
移码
-
移码表示浮点数的阶码
-
具体实现
- 数值位与X的补码相同,符号位与补码相反
-
-
-
定点与浮点数
-
可表示定点小数和整数
-
表现形式
- 定点小数
- 定点整数
-
定点小数表示数的范围
-
定点整数表示数的范围
-
不足
-
数据表示范围受限
-
浮点数
-
把数的范围和精度分别表示的一种数据表示方法
-
使用场合
- 数的表示范围超出了定点数能表示的范围时
-
格式
- E:阶码位数,决定数据范围
- M:尾数范围,决定数的精度
- N=2^e*M
-
一般格式的不足
-
通用性不好
-
标准格式
-
IEEE 754格式
-
指数采用偏移值
- 单精度偏移值为127
- 双精度为1023
-
IEEE754尾数形式
- 1.XXXXXX
- 其中M部分保存的是XXXXXX,1被隐藏,从而可以保留更多的有效位,提高数据表示的精度
-
单精度
- S 符号位
- 8位偏指数E
- 23位有效位数M
- N=(-1)^S * 2^E-127 * 1 .M
- E,M的不同,表示的数也不同
-
双精度
-
与对应真值的相互转换
-
真值转单精度IEEE754
- 1.将真值N变换成(-1)^s * 2^e * 1.M
- 2.E=e+127=e+01111111
- 3.保存S,E,M
-
单精度IEEE754转真值
- 从32位二进制序列中分离出S、E
- e=E-127
- 将S,E带入 (-1)^s * 2^e * 1.M 并展开
- 例子
-
-
-
-
-
-
-