大神们,这段程序的含义是什么?跪求

尤其是指针部分,看不太懂啊

问题补充:
弱弱的问一句 DBB21是怎么计算出来的呢?

图片说明:

大神们,这段程序的含义是什么?跪求   

最佳答案

L  #evid     //输入16进制的数15,即21
L  #evids    //输入16进制的数1,  即1
TAK          //交换ACCU1和ACUU2的内容
TAK          //交换ACCU1和ACUU2的内容,又换回来了
-D           //ACCU2-ACCU1=14
T  #n     
L  #dbno     //输入16进制的数4,即4
T   LW6      //将4传给LW6
TAK          //交换ACCU1和ACUU2的内容,此时ACCU1里的数为20
L   1      
+I           //执行一次双整形的加法运算ACCU1此时等于21
TTD
L   L#8        
*D           //执行一次双整形的乘法运算ACCU1此时的数为168 
OPN DB[LW6]  //打开对应的DB,LW6=4 所以打开的是DB4
LAR1         //将ACCU1里的数,即168下载到地址寄存器1里
L  DBB[AR1, P#0.0] //这里用到了间接寻址,将DB4.DBB21数据传给下面额LW0
T  LW0

提问者对于答案的评价:
好的 明白了 除以8就可以是最终需要的地址了谢谢两位老师!

专家置评

已阅,最佳答案正确。ITD是指将变量由整型转换成长整型,存储在ACCU1中

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年1月1日 下午9:56
下一篇 2018年1月1日 下午9:56

相关推荐