回复:西门子的浮点数处理问题

龟仙人

西门子1847工业学习平台

  • 帖子

    928
  • 精华

    15
  • 被关注

    161

论坛等级:奇侠

注册时间:2006-12-15

普通 普通 如何晋级?

发布于 2018-03-01 20:12:46

1楼

浮点数的意思就是小数点是浮动的,如果小数点位数是一定的就要定点数了,比如金钱的计算就是一个定点数,最多只能精确到分,就是0.01元。浮点数与之相对,如果浮点数很小,那么用来装载整数的位就少,用来装载小数的位就多,就像一个空间分成两部分,一部分是主动的可以理解为整数部分,另一部分是从动的,如果整数部分占的空间大了,那么小数部分就被排挤的只占很少一部分。如果一个浮点数就像 VD216里是0.0004,VD310是8191.900 ,两个数相加,最终的精度是以大数为准,VD310中的数据精度为一个小数点,即精度为0.001,那么VD216就要将第3位小数点后的小数都舍去,VD216变成了0,相加的结果是没有增加。单精度浮点数最高有七位有效数字,小数点前1位,小数点后6位。不知道你明白了没有,有人说数值相差太大计算就会出问题就是因为精度相差太大,造成小数加不上去,同样其它运算也会出现问题。如果两个数相差太大在程序上做一些处理。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8934条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。