合信论坛

快捷导航
查看: 5982|回复: 0

间接寻址的使用方法

[复制链接]

6

主题

7

帖子

712

积分

高级会员

Rank: 4

积分
712
发表于 2021-1-5 14:47:36 | 显示全部楼层 |阅读模式
本帖最后由 谋圣在人间 于 2021-1-5 14:55 编辑

间接寻址使用方法
间接寻址使用指针访问存储器中的数据。 指针是包含另一个存储位置地址的双字存储位置。 只能将 V 存储位置、L 存储位置或累加器寄存器(AC1、AC2、AC3)用作指针。 要创建指针,必须使用“移动双字”指令,将间接寻址的存储位置地址移至指针位置。 指针还可以作为参数传递至子例程。
允许指针访问下列存储区: I、Q、V、M、S、T(仅限当前值)、C(仅限当前值)、SM、AI 和 AQ。 您不能使用间接寻址访问单个位或访问 HC、L 或 AC 存储区。
要间接访问存储器地址中的数据,通过输入一个“和”符号 (&) 和要寻址的存储位置,创建一个该位置的指针。 指令的输入操作数前必须有一个“和”符号 (&),表示存储位置的地址(而非其内容)将被移到在指令输出操作数中标识的位置(指针)。
辨析:&VB20    “&”为取址符号  意为将VB20的区域号和地址编号取出来,存放到VD200中           *VD200   “*” 为寻址符号  将VD200里面存储的地址中的值也就是&VB20中的值传送给VB600/VW602/VD604
VD200中存储的是指针指向的地址,是地址,地址,重要的事情讲3遍
建立指针后监控VD200   16#08000014  0800为V区的区域号  0014是指向地址的编号16#14=10#20
同理I、M、Q等区域都有自己的区域地址

明白了地址偏移后结合for循环指令便可以做一些重复累加计算和查找一类的程序便能得心应手了

1.jpg
2.jpg
3.jpg
读取指针在,这里显示指向的地址VB20、VW20、VD20
4.jpg
指针偏移

指针没有偏移时为VD20,操作偏移一个双字
6.jpg
地址偏移后地址从VD20偏移到了VD24      
8.jpg

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

客服热线
400-700-4858 周一至周五:09:00 - 18:00
深圳市南山区打石一路深圳国际创新谷6栋A座9层

深圳市合信自动化技术有限公司(简称“合信技术”)成立于2003年,高新技术企业,专注于工业自动化产品的研发、生产、销售和技术服务,依靠高质量、高性能的自动化控制产品与方案为客户创造最大价值,立志于成为全球领先的工业自动化解决方案供应商。

Archiver|手机版|小黑屋|COTRUST Inc. ( 粤ICP备13051915号 )

GMT+8, 2024-4-20 04:50 , Processed in 0.076357 second(s), 23 queries .

快速回复 返回顶部 返回列表