双字指针

L 320 
T MD 20
L  DBW [MD20]  // DBW40
这个双字指针的语句表
//装载320数据
//传送到 MD20中
//再把MD20装载到DBW中
这时DBW装载的数据应该是:DBW320
理由:
因为MD20中装载的数据是320
但是正确保存的数据是:
[MD20]=DBW40
我不理解的为什么是//DBW40;这是怎么来的??

最佳答案

1、首先要弄清楚双字指针的数据格式:
0000 0000 0000 0BBB BBBB BBBB BBBB BXXX 
当作为双字指针时,就应该按照3-18bit指定byte,0-2bit指定bit来确定最终指令要操作的地址的。例如:
  0000 0000 0000 0000 0000 0000 0000 1010 = 1.2
2、MD20中装载的数据是320?
320是十进制数,转换为十六进制数为140。对于,十六进制数为140:
0000 0000 0000 0000 0000 0001 0100 0000。
3、我不理解的为什么是//DBW40;这是怎么来的??
双字指针的数据格式的规定:按照3-18bit指定byte,0-2bit指定bit来确定最终指令要操作的地址的:
十六进制数为140为:0000 0000 0000 0000 0000 0001 0100 0000。
注意,0-2bit为0;3-18bit为十六进制数的28;而十六进制数的28转换为十进制就是40!
4、如进一步了解变址寻址见:
、《关于S7-300和S7-400指针寻址的说明与例程(更新版)    》下载:
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=F0215
、《step7编程之地址概念详解》连接:
http://wenku.baidu.com/view/b2b4d3375a8102d276a22fd3.html

http://www.chinakong.com/rencai/disp.asp?id=1633&leibie=4
、《西门子STL间接寻址常问问题集》
http://www.ad.siemens.com.cn/download/docMessage.aspx?
ID=6175&loginID=&srno=&sendtime=

提问者对于答案的评价:
谢谢!阿鸣老师指点!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日
下一篇 2020年10月31日

相关推荐