一次间接寻址的有效地址_理解S7200 Smart的寻址方式(2)

本文详细介绍了S7-200 Smart PLC中的间接寻址,阐述了指针的概念及其作用。通过指针变量存储其他变量的地址,实现数据的间接访问。文中通过实例解释了如何使用MOV_DW指令为指针变量赋值,以及如何使用指针取值符号(*)获取指针所指向的变量值。内容覆盖指针的存储位置及使用场景,帮助读者深入理解PLC的寻址方式。
摘要由CSDN通过智能技术生成

上一篇文章我们介绍了S7-200 Smart的直接寻址,今天这篇文章,我们来介绍下间接寻址。

63561793693fa00b103faa6d5d193a08.png

间接寻址是利用指针来访问存储器中数据的寻址方式。

什么是指针呢?

PLC程序中所定义的变量,或者说符号,都有明确的地址。比如下面的符号表:

5ba68db7ce980db3ffa31367354776b7.png

变量“实数1”的地址是VD24,变量“实数10”的地址是VD270。可以看出,地址与变量是一一对应的关系,通过地址就能找到该变量,也可以说,地址指向该变量。因此,地址被形象化的称为“指针”。变量的指针,就是变量的地址。例如,地址“VD270”指向变量“实数10”,因此“实数10”的指针就是“VD270”。

接下来还要介绍另一个概念:指针变量。

我们知道,整型变量中存放的是整数,实型变量中存放的是实数;同样的,指针变量中存放的是指针。刚刚我们介绍过,指针其实就是地址,因此指针变量中存放的是另一个变量的地址。也可以说,指针变量指向另一个变量。

在S7-200 Smart中,指针变量可以存放在变量存储区(V)、局部存储区(L)或者累加器(AC0,AC1,AC2和AC3)中。

可以使用双字移动指令(MOV_DW)来给指针变量赋值。指针变量的赋值要使用取地址符号:&。

符号“&”用来获取变量的地址,例如下面的代码:

1ceb2d3bfee9ddb03f3f02cfe4738661.png

该程序段将实数1的地址(VD24)存放到指针变量“指针1”中。

当需要得到指针所指向变量的值时,要使用指针取值符号:*

例如下面的代码:

98e45b458a674f9440a0ce9a32415719.png

在变量“指针1”前面加上“*”,表示取指针1所指向的变量的值。该程序段将指针1指向的变量(实数1)的值拷贝到实数10中,最终实现了实数1到实数10的拷贝。

好了,关于S7-200 Smart的间接寻址就介绍到这里。我还写过其它一些PLC的基础知识、寻址方式的文章,如果你感兴趣可以去官网(www.founderchip.com)看看。

相关参考文章:

理解S7-200 Smart的寻址方式(1)

小程序【李工谈工控】提供方便的文章检索功能,欢迎体验:

518baeb2a47abde3cde30c3f646de293.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值