按 IEEE754 标准,float 的格式是 binary32,double 的格式是 binary64,浮点数中的有效数位(significant)部分其实可以理解为是一个定点数,只不过有指数(exponent)部分做了小数点偏移(类似科学计数法,只不过是二进制的,浮点数因此得名)。
我没有具体写过浮点到定点的转换,不过我认为这不会太复杂,思路:浮点数在定点数表达范围内时,只需要用位运算把有效数位部分取出来,再根据指数部分做位移就好。当然,隐藏位,符号位,指数偏移等细节需要注意。好在浮点定点都是二进制所以不需要转换。
Double-precision floating-point format
顶一下
(0)
0%
踩一下
(0)
0%
- 相关评论
- 我要评论
-