浮点数的运算
来源:互联网 发布:贝叶斯算法 spark 编辑:程序博客网 时间:2024/05/16 01:32
规格化的浮点数因为存储是使用类似科学计数法的表示,因此计算方法大体上与科学计数法较为类似。
浮点加减法
浮点加减法的一般步骤(减法本质也是加法):
对于二进制形式的两个浮点数相加
1. 对阶:对于两个规格化浮点数,将较小的指数的数向较大指数的数对齐。通过移动小数点实现。如果出现有效数字位数不能满足的情况,进行近似。
2. 相加尾数(有效数):将两个二进制数的尾数相加。
3. 规格化处理:对已经求得的结果进行规格化处理。即移动小数点位数,使之满足规格化的形式。
4. 按照有效数字位数进行舍入处理。
5. 判断是否出现溢出。
对于浮点数
(1)阶码上溢:
(2)阶码下溢:
(3)尾数上溢:
(4)尾数下溢:尾数右移过程中,最低有效位超出表示的范围,需要进行舍入处理。
浮点乘法
浮点数的乘除法较为简单,只需要尾数相乘,阶码(指数)相加,然后进行规格化处理和舍入就可以了。
例如计算
阶码相加可得
尾数相乘可得
不需要再进行规格化,截取4位
同时符号位为负,因此结果为
算术精确性
IEEE754标准保证在进行舍入之前,在右边总是多保留两位。分别称之为保护位(guard)和舍入位(round)。使用保护位和舍入位能够提供更精确的舍入。
阅读全文
0 0
- 浮点数的运算
- 浮点数的运算
- 浮点数间的运算
- 浮点数的减法运算
- 浮点数的输入以及浮点数运算
- 浮点数运算的的规格化
- java中浮点数的高精度运算
- 浮点数的加减乘除运算步骤
- JS 浮点数的 精确运算
- Java 的浮点数运算问题
- 浮点数加减法的运算步骤
- JS浮点数运算Bug的解决办法
- JS浮点数运算Bug的解决办法
- 关于js中浮点数的运算
- 笔记---浮点数运算的陷阱
- java中浮点数的运算
- 浮点数的运算原理--IEEE 754
- 浮点数做运算的问题
- OSPF笔记-6
- 《python核心编程》学习笔记(二):re
- DesDumplicate去重代码
- NS3生成随机数
- 编写一个程序,它从标准输入读取C源代码,并验证所有的花括号都正确的成对出现。
- 浮点数的运算
- SSH 常用操作
- eclipse中Java及html字体颜色的修改
- Jenkins入门系列之—Jenkins安装与配置
- yuv420数据快速裁剪
- OSPF笔记-7
- Linux下网络相关结构体 struct protoent
- Effective C++ 条款36:绝不重新定义继承而来的non-virtual函数
- mapreduce应用-找出扣扣共同好友