您现在的位置是:首页 > PLC技术 > PLC技术
S7-300有4种寻址方式:寄存器间接寻址
来源:艾特贸易2017-06-05
简介寄存器间接寻址简称寄存器寻址。在 S7 中有两个地址寄存器,分别是 AR1 和 AR2 。通过地址寄存器,可以对各存储区的存储器内容实现寄存器间接寻址。地址寄存器的内容加上偏移量形
寄存器间接寻址简称寄存器寻址。在S7中有两个地址寄存器,分别是AR1和AR2。通过地址寄存器,可以对各存储区的存储器内容实现寄存器间接寻址。地址寄存器的内容加上偏移量形成地址指针,该指针指向数值所在的存储单元。地址寄存器及偏移量必须写在方括号“[]”内。寄存器间接寻址的语句不改变地址寄存器中的数值。用寄存器指针访问一个字节、字或双字时,必须保证地址指针中位地址编号为0。
地址寄存器的地址指针有两种格式,其长度均为双字,指针格式如图3 -9所示。
图3 -9存储器间接寻址的指针格式
表3 -9地址指针区域标识位的含义(rrr第24~26位)
(1)区域内寄存器间接寻址
地址指针格式包括被寻址数值所在存储单元地址的字节编号和位编号,至于对哪个存储区寻址,则在指令中直接给出。这种指针格式适用于在确定的存储区内寻址,即区域内寄存器间接寻址。
区域内寄存器间接寻址,第31位为0,第24~ 26位(yyy)也为0,存储区的类型在指令中给出,其指针可访问存储区域P、I、Q、M、DBX、DIX和L的位、字节和双字。双字指针格式与存储器间接寻址的双字指针格式一样。
区域内寄存器间接寻址示例见表3 -10。
表3 -10区域内寄存器间接寻址示例
(2)区域间寄存器间接寻址
地址指针格式中还包含了数值所在存储区的说明位(存储区域标志位),这样就可通过改变这些位实现跨区寻址,这种指针格式用于区域间寄存器间接寻址。
区域间寄存器间接寻址,第31位为1,通过改变存储区域标识位rrr实现区域间跨区寻址。
其指针可访问存储区域P、I、Q、M、DBX、DIX和L的位、字节和双字。存储区域由地址寄存器的第24~ 26位(yyy)确定。被寻址信息存放在地址寄存器中。
区域间寄存器间接寻址示例见表3 -11。
表3 -11 区域间寄存器间接寻址示例
P#8.1对应的二进制数为2# 1000 0010 0000 0000 0000 0000 0100 0111。因为地址指针P#Q8.7中已包含有区域信息(010,Q),使用间址寻址指令A[AR1,P#0.0]中没必要再使用地址标识符Q。
点击排行
