电工技术基础_电工基础知识_电工之家-电工学习网

欢迎来到电工学习网!

西门子编程32位地址指针改换左移3位

2017-07-18 09:48分类:PLC基础知识 阅读:

 

西门子编程32位地址指针改换为何要移3位,移多少位不是随意规则的,那么这个是怎样来的呢?先来看看指针数据类型的存储格局是怎样的,这儿就直接说32位的存储器寻址吧。

32位的指针当然是32位的,它的每一位都有分外的意义。这个有必要先要了解。

0000 0000 0000 0BBB BBBB BBBB BBBB BXXX

0-2位(X) 标明位地址。

3-18位(B)标明字节地址。

19-31位(0) 没有界说。

XXX 标明从 000-111 刚好能够代表 .0- .7 ,所以称它为位地址

而BBB标明的计划是0-65536 这个计划,刚好能够掩盖I Q M L DB的标明计划,所以称它为字节地址。

比方咱们读取 MW20 这个存储器的数据,那么咱们能够运用下面的指令

L MW20

用寻址的办法来标明的话即是

L MW[ MD2 ] 其间MD2是一个变量,咱们期望当MD2的数值等于20的时分就能够拜访到MW20了。这个时分咱们要清醒地看到MD2是一个32位长度变量,加上中括号[ ]后,它就代表了一个32位的指针了,这个时分,假定MD2=20的话,它标明的就不是20,而是10100,依照32位指针的数据界说,它的位地址是100 字节地址是10,
那么它代表的是 2.4这么的话 L MW[MD2] 就成为了 L MW2.4 显着这么的作用是过错的,只需关于位寻址咱们才干够运用2.4这么的格局例如A M 2.4
关于字节,字,双字都不能这么写。那怎样办,按规则办,依据32位的指针格局,咱们期望它的字节地址为20,那么将最低的3位左移,
L L#20 // L#20标明整数20
SLD 3
T MD2
这么的话 MD2的数据就成为10100 000,
标明20.0 当对字节,字,双字进行寻址的时分,位地址有必要为0。这一条准则联络32位指针的数据构造就能够阐明为何要左移3位,或许乘以8 (左移3位恰当于乘以8)。啥时分移的答案也就在这其间了。

上一篇:三菱PLC输入输出编号(X/Y)分配思路

下一篇:西门子S7 300程序块加密解密图解教程

相关推荐

电工推荐

    电工技术基础_电工基础知识_电工之家-电工学习网
返回顶部