需要掌握:
浮点数表示
浮点数N = 尾数 * 基数^指数
解释
- 尾数:一般为小数,一般用 补码 表示
- 基数:在计算机中,默认表示
2 - 指数:也称为 阶码、阶数,一般为整数,一般用 移码 表示
特点
- 阶码的位数 决定数的表示 范围,位数 越多范围越大
- 尾数的位数 决定数的有效 精度,位数 越多精度越高
比较两个浮点小数运算过程
对阶 > 尾数计算 > 结果格式化
解释:
- 对阶:让两个数的指数(阶码)相等。
- 对阶时,小数向大数看齐
- 对阶是通过较小数的 尾数右移 实现的
例子
某种机器的浮点数表示格式如下(允许非规格化表示)
阶符1位 阶码4位 数符1位 尾数10位
若阶码以补码表示,尾数以原码表示,则
1 0001 0 0000000001
表示的浮点数是多少
“允许非规格化表示” 是什么意思
默认前面是尾数、后面是阶码
“允许非规格化表示”,前面是阶码、后面是尾数
展示数据
阶符1位 阶码4位(补码) 数符1位 尾数10位(原码)
1(负数) 0001 0(正数) 0000000001
将阶码 转 十进制
阶码4位(补码):0001 // 默认为整数
反码是: 0000
原码是: 1111
换算十进制: 15 // 注意:阶符是1,表示负数
最终结果: -15
将尾数 转 十进制
尾数10位: 0000000001 // 默认为小数
换算十进制: 2^-10
结果
浮点数是:
2^-10 * 2^-15