回复:一段STL代码,请帮忙解读一下具体的执行过程和一些指令的含义

已锁定

洐功

西门子1847工业学习平台

  • 帖子

    168
  • 精华

    0
  • 被关注

    3

论坛等级:侠客

注册时间:2018-05-18

黄金 黄金 如何晋级?

发布于 2023-07-30 09:19:25

14楼

SET:设置某些变量或寄存器的值。

SAVE:将指令的状态保存到BIE中,以备后续步骤使用。

L P##IN1:将输入1的地址装载到累加器ACCU1中。

LAR1:将累加器ACCU1中的地址装载到地址寄存器AR1中。

L W [AR1,P#0.0]:从本地数据块IN1中读取DB号,并将其值装载到累加器ACCUM1中。

T #w_DBNR1:将DB号的值传递给标记#W_DBNR1。

OPN DB [#w_DBNR1]:如果存在,则打开DB#W_DBNR1,否则不做任何操作。

L D [AR1,P#2.0]:读取指向IN1字符串的指针,并将其值装载到累加器ACCUM1中。

LAR1:将累加器ACCU1中的地址装载到地址寄存器AR1中。

T #d_AR_IN1:将AR1的地址值传递给标记#D_AR_IN1。

L B [AR1,P#1.0]:读取IN1字符串的长度,并将其值装载到累加器ACCUM1中。

T #yAnzIN1:将字符串长度的值传递给标记#YAnzIN1。

L P##IN2:将输入2的地址装载到累加器ACCU1中。

LAR2:将累加器ACCU2中的地址装载到地址寄存器AR2中。

L W [AR2,P#0.0]:从本地数据块IN2中读取DB号,并将其值装载到累加器ACCUM2中。

T #w_DBNR2:将DB号的值传递给标记#W_DBNR2。

OPN DB [#w_DBNR2]:如果存在,则打开DB#W_DBNR2,否则不做任何操作。

L D [AR2,P#2.0]:读取指向IN2字符串的指针,并将其值装载到累加器ACCUM2中。

LAR2:将累加器ACCU2中的地址装载到地址寄存器AR2中。

T #d_AR_IN2:将AR2的地址值传递给标记#D_AR_IN2。

L B [AR2,P#1.0]:读取IN2字符串的长度,并将其值装载到累加器ACCUM2中。

T #yAnzIN2:将字符串长度的值传递给标记#YAnzIN2。

L P##RET_VAL:将返回值的地址装载到累加器ACCU2中。

LAR2:将累加器ACCU2中的地址装载到地址寄存器AR2中。

L W [AR2,P#0.0]:从本地数据块RET_VAL中读取DB号,并将其值装载到累加器ACCUM2中。

T #w_Temp:将DB号的值传递给标记#W_Temp。

OPN DI [#w_Temp]:如果存在,则打开DI#W_Temp,否则不做任何操作。

L D [AR2,P#2.0]:读取指向RET_VAL字符串的指针,并将其值装载到累加器ACCUM2中。

OD DW#16#1000000:设置指针区域标识符


liu
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54797条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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