回复:s7-300编程实数如何转换为整数?

zhangli0

西门子1847工业学习平台

  • 帖子

    17219
  • 精华

    64
  • 被关注

    898

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2013-08-21 08:21:52

7楼

quote:以下是引用emil128在2013-08-20 16:37:33的发言:
0侠举的例子很生动,可以很好的解释RND+和RND-的现实意义。
不过在2楼对RND指令的解释有所欠缺
“rnd是四舍五入(小数部分大于等于0.5,整数部分加1,小数部分舍去)”
小数部分等于0.5的时候,未必是整数部分加1,也可能是舍去。
我记得以前廖老师的帖子里有过讨论。
手册里的说法是这样的:
RND
该指令将 32 位 IEEE 浮点数转换成为一个 32 位整数(双整数),并将结果取整为最近的整数。
如果被转换数字的小数部分位于奇数和偶数结果中间,则该指令选择偶数结果。

所以
1.5 RND 结果是2
2.5 RND 结果也是2

你说的对,.5的这种情况比较特殊,如果是我们编程进行实数计算,能够正好是.5的情况比较少,所以我没有太注意,测试结果如你所说。
活到老,学到老!为了生活学习吧!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54713条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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