回复:Word是数据类型吗?

Automann

  • 帖子

    6168
  • 精华

    138
  • 被关注

    309

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

发布于 2012-07-02 06:43:01

24楼

quote:以下是引用eaglesky在2012-07-02 00:08:30的发言:
[quote][b]
如果说从学生的角度讲,考试题目有这个,确实需要界限分明,从学术上讲应该也需要严谨。从现实应用上讲的话,更需要的理解其中的真实含义,才能灵活应用。
step7在数据类型上,如果用LAD的话,数据类型不合要求,程序是通不过的,但是同样的语句,转换成STL来写的话,就是可以通过的,也能得到编程需要的结果。

你说的情况是存在的,以比较指令为例,在梯形图中操作数的数据类型必须是INT,输入WORD数据类型的变量或十六进制格式的常数都不行。但是在STL中,下面的程序是没问题的:
L W#16#100
L 345
==I
= M 0.0
其原因在于累加器和没有定义数据类型的MD20一样,是一个没有数据类型的存储单元,W#16#100装入累加器后,它的数据类型属性就丢失了,操作系统将它视为INT格式的256来处理。但是上述程序是不能转换为LAD的。如果将 W#16#100改为256,就可以转换了。
再看一个例子,在STL中调用SFC14:
CALL "DPRD_DAT"
LADDR :=256
RET_VAL:=MW6
RECORD :=P#M 20.0 BYTE 20
输入参数LADDR的数据类型为WORD,输入INT常数256出错(用红色表示),需要改为16#100。如果搞不清楚数据类型,出了错也不知道错在哪里。
所以不管是LAD还是STL,对数据类型都得较真!!数据类型不是理论问题,而是一个实际问题。
追求完美
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54713条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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