回复:一段指针程序的分析,请帮助!

艾星落尘

  • 帖子

    996
  • 精华

    1
  • 被关注

    179

论坛等级:至圣

注册时间:2010-02-26

白金 白金 如何晋级?

发布于 2016-11-04 09:42:20

6楼

这段程序的主要意思就是实现从一个指定的DB块按字节的方式将数据拷贝到另一个DB块,这里用到了ANY指针;MOBY_DAT_QUELLE和MOBY_DAT_ZIEL 在该程序块的里的数据定义应该就是ANY数据类型。

      LAR1  P##MOBY_DAT_QUELLE          // 读取指针地址

      L     B#16#10                     // SYNTAX-ID IN DEN ANY POINTER EINTRAGEN

      T     LB [AR1,P#0.0]

      L     B#16#2                      

      T     LB [AR1,P#1.0]             // 以上是ANY指针的第一个字的定义16#1002按字节的方式进行数据的读取

      L     #Laenge_daten_zu_uebertr    // 数据的长度

      T     LW [AR1,P#2.0]

      L     #DB_Quelle_Nummer           // DB号

      T     LW [AR1,P#4.0]

      L     P#DBX 0.0                   //读取指针的变量,从0开始

      L     #Zeiger_DBB_Quell_DB        //地址指针的偏移量

      SLD   3                           //必须左移动3为,消除位地址的干扰

      +D    

      T     LD [AR1,P#6.0]              // 最终得到的一个地址指针

以上程序其实就是编写一个SFC20执行的过程中的一个数据源的地址,目标地址也是一样的。不妨看看,这个块在外部调用的时候是否有数据的长度变量,DB号,和地址的偏移量。



一个人在战斗
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54711条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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