回复:关于装载指令L的问题

我心依旧555

  • 帖子

    769
  • 精华

    9
  • 被关注

    34

论坛等级:奇侠

注册时间:2009-09-12

普通 普通 如何晋级?

发布于 2011-07-18 14:32:23

12楼

TO:“老学童”大侠
首先DBD是32位,DBW是16位的
一个32位整数的范围(十进制有符号数字)为-2147483648到2147483647
一个16位整数的范围(十进制有符号数字)为-32768 到32767
在S7-300中当把一个DBD传送给DBW时实际上传送的是DBD的低16位,高16位为被舍弃,意味着当DBD内的值大于16位可表示范围的时候是不能获得正确的值的(除非这是你想要的)
一些编程语言(或者不同PLC)对语法及数据类型检查较松,如果你非要这么做自己就得保证结果的正确性。数据匹配只是更容易保证结果的正确性,以避免可能出错的可能性。
在使用一个变量或地址之前我想首先应该确定的就是它可表示的范围及你所使用的范围,以及数值超出范围的对策吧。
一切皆有可能
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54756条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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