快乐虾
http://blog.youkuaiyun.com/lights_joy/
lights@hb165.com
本文适用于
ADSP-BF561
Visual DSP++ 5.0 (update 6)
欢迎转载,但请保留作者信息
FLT_MAX是在float.h中定义的一个常量,用以表示单精度浮点数的最大值。
#define FLT_MAX 3.4028234663852886E+38F
那么这个值从何而来?
从浮点数的表示可以知道,要取最大值,可以将指数和尾数都设置为最大值,由于标准规定将指数全为1留做特殊表示,故指数最大值为255,这个数即
0 11111110 11111111111111111111111
符号位 指数 尾数
从16进制整数看它的值就是 0x7f 7f ff ff。
根据浮点数的计算公式可知这个值为:
1. 9999997615814208984375 * 2(254-127)
= 3.4028234663852886E+38
这个是计算器的计算结果。
1 参考资料
Vdsp(bf561)中的浮点运算(3):FLT_MIN(2008-12-19)
Vdsp(bf561)中的浮点运算(2):float的疑问(2008-12-18)
Vdsp(bf561)中的浮点运算(1):文档的说法(2008-12-16)
本文详细解释了FLT_MAX常量的定义及其数值来源,通过分析浮点数的内部表示方法,展示了如何计算单精度浮点数的最大值。
2953

被折叠的 条评论
为什么被折叠?



