中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

人机界面

抖音 西门子减速电机 德嘉 台达 英威腾 泓格论坛 西门子 我和LOGO!有个约会 FLIR红外热像论坛 【有奖活动】英威腾 “Ni美国国家仪器 “PLC发展趋势大讨论”活动圆满结束 cc-link图文征集活动 西门子SMART LINE V3
工控论坛首页 人机界面 → 浏览主题: 人机浮点运算为什么会出错?
发表新帖 回复该主题
回帖:2个,阅读:79 [上一页] [1] [下一页]
* 帖子主题:

人机浮点运算为什么会出错?

分享到
14610
fuhuafeng72
文章数:5065
年度积分:620
历史总积分:14610
注册时间:2011/11/21
发站内信
2017国庆活动(三)
2016国庆活动(三)
2014逛工博
发表于:2020/1/15 16:48:02
#0楼
计算涉及到包含非常大和非常小数字的一长串数值时,计算结果可能不准确。
如果数字相差 10 的 x 次方,其中 x > 6 (Real) 或 15 (LReal),则会发生上述情况。 例如 (Real): 100 000 000 + 1 = 100 000 000.  
这样的单精度浮点运算,为什么相差10的6次方以上就不正确了呢!
凯成、日发、攀峰龙带式帘子线倍捻机、直捻机电控系统维修改造。
973
51477工控迷
文章数:291
年度积分:325
历史总积分:973
注册时间:2017/3/31
发站内信
发表于:2020/1/15 17:14:13
#1楼
我觉得吧这毕竟是一个机器,我用施耐德的PLC浮点运算最多能支持小数点后的两位还是三位来的,,所以不太奢求精度
11286
pqsh 版主
文章数:4758
年度积分:330
历史总积分:11286
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2020/1/15 22:04:47
#2楼
因为单精度浮点的数位精度就是6位,超出6位差别,就没法计算了.
也就是说,它只能留着大约6位小数.比如1.999888,你让它加0.0000009(9.000000^10-7),它就瞎了一样,看不到.
如果我忘了我
请帮忙记得我
pqsh@163,326199298@
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2020 Gkong.com, All Rights Reserved

62.4