首页 理论教育 寻址方式及间接寻址机制详解

寻址方式及间接寻址机制详解

时间:2023-06-27 理论教育 版权反馈
【摘要】:按位、字节、字、双字的寻址方式如图2-10所示。图2-10 位、字节、字、双字的寻址方式2.间接寻址间接寻址时操作数并不提供直接数据位置,而是通过使用地址指针来存取存储器中的数据。1)使用间接寻址前,要先创建一指向该位置的指针。例如:MOVD&VB200,AC1指令就是将VB200的地址送入累加器AC1中。例如:MOVW*AC1 AC0//MOVW表示字传送指令,指令将AC1中的内容为起始地址的一个字长的数据送入AC0内。

寻址方式及间接寻址机制详解

1.直接寻址

直接寻址是在指令中直接使用存储器或寄存器的元件名称(区域标志)和地址编号,直接到指定的区域读取或写入数据。按位、字节、字、双字的寻址方式如图2-10所示。

978-7-111-49003-6-Chapter02-22.jpg

图2-10 位、字节、字、双字的寻址方式

2.间接寻址

间接寻址时操作数并不提供直接数据位置,而是通过使用地址指针来存取存储器中的数据。在S7-200中允许使用指针对I、Q、M、V、S、T、C(仅当前值)存储区进行间接寻址。(www.xing528.com)

1)使用间接寻址前,要先创建一指向该位置的指针。指针为双字(32位),存放的是另一存储器的地址,只能用V、L或累加器AC作指针。生成指针时,要使用双字传送指令(MOVD),将数据所在单元的内存地址送入指针,双字传送指令的输入操作数开始处加&符号,表示某存储器的地址,而不是存储器内部的值。指令输出操作数是指针地址。例如:MOVD&VB200,AC1指令就是将VB200的地址送入累加器AC1中。

2)指针建立好后,利用指针存取数据。在使用地址指针存取数据的指令中,操作数前加“*”号表示该操作数为地址指针。例如:MOVW*AC1 AC0//MOVW表示字传送指令,指令将AC1中的内容为起始地址的一个字长的数据(即VB200,VB201内部数据)送入AC0内。如图2-11所示。

978-7-111-49003-6-Chapter02-23.jpg

图2-11 间接寻址

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈