0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

S7-300间接寻址中的寄存器间接寻址详解

h1654155282.3538 来源:技成PLC课堂 作者:技成PLC课堂 2020-11-20 17:38 次阅读

(1)寄存器间接寻址概述

寄存器间接寻址是通过使用CPU内部集成的两个地址寄存器AR1和AR2存储地址指针来实现的寻址方式,使用时分为内部区域间接寻址和交叉区域寻址两种寻址方式。

AR1,AR2均为32位寄存器,寄存器间接寻址只使用32位指针。对地址寄存器AR操作的相关指令有:

(2)寄存器寻址——内部区域寄存器间接寻址

内部区域寄存器间接寻址指针用于I、Q、M、L和数据块等存储器中的位、字节、字及双字的寻址,与32位存储器的使用方式相同,不同之处在于指针存储的位置不同。内部区域寄存器地址指针格式如下所示:

第0位至第2位作为寻址操作的位地址,第3位至第18位作为寻址操作的字节地址,第19位至第30位没有定义,第31位为内部区域与交叉区域指针标识符,0:内部区域指针,1:外部区域指针。

内部寄存器间接寻址格式:地址存储器标识符[地址寄存器,P#BYTE.BIT]。

如:MW[AR1,P#4.0]或DIX[AR2,P#0.0]

MW:表示访问的存储器及访问的长度,AR1:表示地址寄存器1,P#4.0为地址偏移量,

例如:

(3)寄存器寻址——交叉区域寄存器间接寻址

交叉区域寄存器寻址与内部区域寄存器寻址相比,地址指针中带有存储器标识符,如I、Q、M等,交叉区域地址指针格式如下:

第0位至第2位作为寻址操作的位地址,第3位至第18位作为寻址操作的字节地址,第24位至第26位为地址标识符,第31位为内部区域与交叉区域指针标识符,0:内部区域指针,1:外部区域指针。

地址标识符表示如下:

交叉区域寄存器寻址格式为:访问宽度[地址寄存器,P#BYTE.BIT]。指针指向地址等于地址寄存器地址+地址偏移常量。

例如:

在S7-300中除了提供16位和32位存储器地址指针和32位寄存器地址指针外,在程序的FC和FB的接口参数中,还提供了48位(pointer数据类型)和80位(ANY数据类型)的地址指针。16位和32位地址指针可以直接装在到存储器或地址寄存器中,从而可以在程序块中使用间接寻址。“pointer”和“ANY”指针由于大于32位而不能装在到存储器或是寄存器中,所以不能在程序块中直接使用,必须进行拆分使用,这两种指针专用于功能(FC)和功能块(FB)接口参数的传递。如调用函数赋值形参时,都实参的完全寻址。
责任编辑人:CC

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5028

    浏览量

    117712
  • S7-300
    +关注

    关注

    8

    文章

    224

    浏览量

    33782
  • 间接寻址
    +关注

    关注

    0

    文章

    18

    浏览量

    7994
收藏 人收藏

    评论

    相关推荐

    西门子plc间接寻址方法

    1.区域内间接寻址 指针的最高位(第31位)x为0时为区域内的间接寻址,此时区域标示号rrr也为0,地址指针的格式与存储
    发表于 12-07 15:51

    寄存器间接寻址和相对寻址的区别是什么

    ,执行该条指令后,R7的数据会送到累加A,累加A的数据就变为10101001。    
    发表于 01-20 15:33

    间接寻址是什么意思?

    间接寻址是什么意思?查表又是什么?EEPROM是如何定义的?
    发表于 07-14 07:46

    间接寻址的应用

    介绍:本文介绍如何进行间接寻址,并举例说明如何利用间接寻址来清内存。
    发表于 07-01 11:56 14次下载

    间接寻址及地址寄存器指令

    间接寻址及地址寄存器指令
    发表于 08-12 11:59 18次下载

    寄存器间接寻址方式

    寄存器间接寻址方式   寄存器间接寻址是将指定的
    发表于 03-14 15:29 4826次阅读

    变址间接寻址方式

    变址间接寻址方式   基址寄存器加变址寄存器间接寻址方式,是MCS-51指令集所独有
    发表于 03-14 15:30 4905次阅读

    HT MCU间接寻址的应用

    Holtek 单片机有一个间接寻址寄存器R0([00H])(有的单片机有两个间接寻址寄存器 R0
    发表于 01-18 16:06 27次下载

    西门子S7-300间接寻址分类介绍

    在PLC寻址可以分为直接寻址间接寻址两部分,直接寻址是在程序中通过指令直接对地址进行访问,地址通常是一个常数,如定时器T0,地址为“0”。
    的头像 发表于 01-30 11:15 5219次阅读
    西门子<b class='flag-5'>S7-300</b><b class='flag-5'>间接</b><b class='flag-5'>寻址</b>分类介绍

    plc的寻址方式:立即寻址、直接寻址间接寻址

    我们都知道西门子200plc有三种寻址方式:立即寻址、直接寻址间接寻址;这里主要给大家区分下直接和间接
    的头像 发表于 09-25 11:50 2.1w次阅读
    plc的<b class='flag-5'>寻址</b>方式:立即<b class='flag-5'>寻址</b>、直接<b class='flag-5'>寻址</b>、<b class='flag-5'>间接</b><b class='flag-5'>寻址</b>

    地址寄存器间接寻址进行详解

    关于间接寻址分为存储器间接寻址和地址寄存器间接寻址
    的头像 发表于 01-30 15:17 4241次阅读
    地址<b class='flag-5'>寄存器</b><b class='flag-5'>间接</b><b class='flag-5'>寻址</b>进行<b class='flag-5'>详解</b>

    plc间接寻址有什么用?

    介绍如何在PLC程序中实现间接寻址。 一、PLC间接寻址的定义和原理 PLC间接寻址的概念很简单
    的头像 发表于 09-15 14:59 1030次阅读

    PLC中为什么要间接寻址?直接寻址不行吗?

    PLC中为什么要间接寻址?直接寻址不行吗? PLC,也称程序可编程控制器,是一种专门用于自动化控制的电子设备,广泛应用于各种工业领域中。在PLC编程中,常常用到寻址的概念,以便读取或控
    的头像 发表于 09-15 14:59 1156次阅读

    什么是PLC直接寻址间接寻址

    什么是PLC直接寻址间接寻址?  PLC直接寻址间接寻址是在程序设计中经常使用的两种方法。直
    的头像 发表于 09-15 14:59 1652次阅读

    SCL中数据块的间接寻址

    间接寻址,使用数组的符号地址访问
    的头像 发表于 01-03 09:33 405次阅读
    SCL中数据块的<b class='flag-5'>间接</b><b class='flag-5'>寻址</b>