STL 指针相减

L     3
      T     #t_Amount_Array
      L     P##Out
      L     P##All_Array
      -D    
      L     8
      /D    
      L     #t_Amount_Array
      /D    
      T     #t_Length_Array


没看懂这段程序  求大神分析下

钻石用户推荐最佳答案

1、解读:
L     3
T     #t_Amount_Array  //将 3 存入这个变量

L     P##Out                   
L     P##All_Array  
-D              //两指针相减后,是一个 P#X.X 的指针,
                  //如果 P##Out 与P##All_Array的后三位相同,则得到的是 P#X.0
L     8         
/D              //两指针相减的结果除以 8,得到的是存储单元的个数

L     #t_Amount_Array   //装载 3
/D                                    //存储单元个数除以 3 的值,
                                         也可能每个数组元素占用3个字节的存储空间。    
T     #t_Length_Array     //存储单元个数除以 3 的值存入 #t_Length_Array ,
                                         //也就是数组中有多少个元素。
2、可以参考下面两个文档解读。
S7-300和S7-400寻址  ID:79632832 2013年9月12日
https://support.industry.siemens.com/cs/document/79632832
西门子STL间接寻址常问问题集 76492353 2013年8月8日
https://support.industry.siemens.com/cs/document/76492353
SIMATIC 用于S7-300 和S7-400 编程的语句表 (STL) 参考手册
ID:45523446 发布日期 2010年11月3日
https://support.industry.siemens.com/cs/document/45523446

提问者对于答案的评价:

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc351334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论