西门子编程32位地址指针转换为何左移3位?

来源:电工天下时间:2015-09-15 10:31:52 作者:老电工手机版>>

西门子编程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上升沿与下降沿的作用及编程方法

    西门子plc上升沿与下降沿的作用及编程方法

    西门子plc上升沿与下降沿的作用及编程方法,西门子plc上升沿与下降沿的作用及编程方法,以及上升沿和下降沿的主要作用说明。

    时间:2022-09-20 19:49:42

  • 西门子s7-200系列plc定时中断指令编程入门

    西门子s7-200系列plc定时中断指令编程入门

    西门子s7-200系列plc定时中断指令编程入门,

    时间:2022-02-05 08:11:01

  • 西门子plc编程符号地址的二种类型

    西门子plc编程符号地址的二种类型

    西门子plc编程符号地址的二种类型,分为未用符号显示、无符号地址显示两种,这两个选项无显示过滤设定项,分别用于显示符号地址与绝对地址。

    时间:2020-11-17 13:19:17

  • 西门子STEP7 Micro WIN编程软件选项设置方法

    西门子STEP7 Micro WIN编程软件选项设置方法

    有关西门子step7 Micro WIN编程软件的选项设置方法,介绍了西门子STEP7 Micro WIN编程软件的选项设置步骤,教大家设置合理的参数选项,以方便自己的编程工作。

    时间:2020-04-23 11:31:46

  • 西门子s7-200系列plc编程器的用法实例

    西门子s7-200系列plc编程器的用法实例

    有关西门子s7-200系列plc编程器的用法,包括步进与伺服脉冲的定位控制、高速计数功能、PID回路控制功能的例子,感兴趣的朋友参考下。

    时间:2020-04-23 09:58:21

  • 西门子s7-200PLC编程软件中文设置教程

    西门子s7-200PLC编程软件中文设置教程

    有关西门子s7-200PLC编程软件中文的设置教程,西门子s7-200PLC编程软件英文版安装,如何转换为中文版,有没有便捷的方法。

    时间:2020-04-08 13:35:19

  • plc单流程状态转移图的编程技巧

    plc单流程状态转移图的编程技巧

    plc单流程状态转移图的编程技巧,plc单流程状态转移图中的状态三要素是指驱动、状态转移条件和状态转移方向三个要素,步进顺控指令的编程原则:先进行驱动处理,然后进行状态转移处理。

    时间:2020-04-08 11:54:26

  • 西门子plc的转换指令功能说明

    西门子plc的转换指令功能说明

    西门子plc的转换指令1. BCD_IBCD码转换为整数2. I_BCD 整数转换为BCD码3. I_DINT 整数转换为双整数4. BCD_DIBCD码转换为双整数5. DI_BCD 双整数转换为BCD码6. DI_REAL 双整

    时间:2020-03-15 11:05:22

推荐文章

Copyright © 2015 - 2022 dgjs123.com All Rights Reserved

电工天下 版权所有