搜索
查看: 1403|回复: 4

[原创] 如何判断一个浮点数的有效性

[复制链接]

该用户从未签到

32

主题

449

帖子

34

蝴蝶豆

金牌会员

最后登录
2021-5-6
发表于 2019-1-5 16:19:26 | 显示全部楼层 |阅读模式

最近项目上有需要将浮点数存放在Flash中,每次取出来之后需要对数据进行判断,所以这就需要用到一个函数,int fpclassify(x)
在这里需要映入头文件“math.h”
返回值一共5个

FP_NAN:x是一个“not a number”。
FP_INFINITE: x是正、负无穷。
FP_ZERO: x是0。
FP_SUBNORMAL: x太小,以至于不能用浮点数的规格化形式表示。
FP_NORMAL: x是一个正常的浮点数(不是以上结果中的任何一种)。



所以可以通过这个来判断从Flash里面读取出来的数据否正确或者判断写入的数据是否正确。

更加详细的解释请参考下面的链接,用到的时候才知道还有很多要学。
http://blog.csdn.net/dldw8816/article/details/53182996


回复

使用道具 举报

该用户从未签到

1492

主题

2703

帖子

0

蝴蝶豆

管理员

最后登录
2021-5-11
发表于 2019-1-22 13:32:52 | 显示全部楼层
谢谢分享
回复

使用道具 举报

该用户从未签到

32

主题

449

帖子

34

蝴蝶豆

金牌会员

最后登录
2021-5-6
 楼主| 发表于 2019-1-22 15:09:00 | 显示全部楼层

用到了就知道了,哈哈
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2021-4-15 11:47
  • 签到天数: 537 天

    [LV.9]

    29

    主题

    2176

    帖子

    127

    蝴蝶豆

    论坛元老

    最后登录
    2024-4-24
    发表于 2019-1-22 16:17:00 | 显示全部楼层
    虽然研究了很久IEEE754,可佩服这个优雅的设计,但是总的结论还是:对浮点数能不使用就不使用
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    32

    主题

    449

    帖子

    34

    蝴蝶豆

    金牌会员

    最后登录
    2021-5-6
     楼主| 发表于 2019-1-22 17:23:57 | 显示全部楼层
    stm1024 发表于 2019-1-22 16:17
    虽然研究了很久IEEE754,可佩服这个优雅的设计,但是总的结论还是:对浮点数能不使用就不使用 ...

    对于浮点来说,直接用单片机直接转换就好了,其实个人觉得浮点的优势还是有的,不过和你说的一样,没事最好不要用浮点,754的标准真的看不懂,哈哈哈
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

    GMT+8, 2024-4-25 11:54 , Processed in 0.151771 second(s), 33 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表