回复:求救,这个浮点数修改后,程序就会出问题。到底是哪的问题

zhangli0

西门子1847工业学习平台

  • 帖子

    17141
  • 精华

    63
  • 被关注

    890

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2014-06-14 08:04:20

3楼

你的这个问题也讨论过很多次了,这是因为累加器的有效位造成,而累加的过程实数累加,先对齐指数,然后对齐有效数字部分,累加的两个数的数量级相差10^7的话,小的那个数对齐指数后,有效数字就变成0了。所以累加的过程中数量级不能相差10^7,越接近这个数量级误差越大。
解决方法:你可以用多次累加的方式来做:sum1=sum1+pv,若sum1>sum1_sp,则sum2=sum2+sum1,sum1=0,最后的累计值就是sum1+sum2,如果要累计更多,你可以再重复上面的方法。
活到老,学到老!为了生活学习吧!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54621条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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