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

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

3天内不再提示

寻址方式分类及其详解

电小二 作者:电子发烧友网 2019-01-30 16:03 次阅读

分类:寻址方式从大的方面可以分成直接寻址和间接寻址。

直接寻址就像甲要和乙说话直接叫乙的名字就可以了,甲直接和乙建立联。

间接寻址就像甲要和乙说话,而乙在另外一个城市,甲就写了一封信通过邮递员送给乙,甲通过邮递员间接和乙建立联系,这就叫间接寻址。间接寻址中指针就充当了邮递员的角色。

直接寻址分为:绝对地址寻址,符号寻址

间接寻址分为:存储器间接寻址,寄存器间接寻址。

一、直接寻址

直接寻址是最简单的寻址方法,也是编程中最常用的寻址方式。

①绝对地址寻址

绝对地址寻址就是直接调用要使用的地址

示例:

I0.0 Q1.0 MW0

②符号寻址

符号寻址就是通过符号表中的绝对地址的命名进行寻址

示例:

用下图中的I_Motor_Start进行寻址。

二、间接寻址

间接寻址是比较复杂的寻址方式,也是我们这里重点讲解的地方,间接寻址需重点理解指针的概念。

指针:理解指针主要需要理解指针的两个特性。

A.存储性:存储性指的是指针也是一段存储空间,它的存储内容是地址。

B.指向性:因为指针存放的内容是地址,那么指针中存放的是哪一个地址,我们就说指针指向了这个地址所对应的存储空间,这就是指针的指向性。

A.存储器间接寻址

【A1】16位指针寻址:

1)、16位指针存储空间

16位指针存储空间是16位,2个字节,通过这2个字节的空间来存放变量的地址。

2)、16位指针寻址范围

16位指针只能对计时器(T),计数器(C),数据块(DB,DI)的号,程序块(FB,FC)的号进行寻址,也就是这2个字节的存储空间中只能存放计时器的编号,计数器的编号,数据块的编号,程序块的编号。

3)、16位指针寻址表示格式

16位指针寻址表示格式为:区域标示符[16位地址指针]

示例:

DB [MW0] //表示对DB块进行寻址,MW0中如果存储的是1,那么该寻址结果为DB1,也就是通过该指令找到了DB1数据块。

T [MW2] //表示对计时器进行寻址,MW2中如果存放的是2,那么该寻址结果为T2,也就是通过该指令找到了计时器T2。

4)、16位指针寻址程序示例

例1:

L 2//将2进行装载

T MW 0//将2传送到MW0

A I 0.0//如果I0.0 = True

L S5T#10S//装载时间

SD T [MW0]//T开始计时

例2:

L 1//将1进行装载

T MW 0//将1传送到MW0

OPN DB [MW 0]//打开DB1

L 10//将10进行装载

T DBW 0//将10传送到DB1.DBW0中

L DBW 0//将DB1.DBW0进行装载

T MW 2//将DB1.DBW0传送到MW2中

【A2】32位指针寻址

1)、32位指针存储空间

32位指针存储空间是32位,4个字节,通过这4个字节的空间来存放变量的地址。

2)、32位指针寻址范围

32位指针能对I、Q、M、L、数据块的位、字节、字、双字进行寻址,也就是这4个字节的存储空间中能对上述存储类型中的位、字节、字、双字的地址进行存储。

3)、32位指针存储格式

4)、32位指针寻址表示格式

32位指针寻址表示格式为:地址存储器标示符[32位地址指针]

示例:

I[MD0]//I表示输入存储区,MD0存储地址信息

Q[MD4]//Q表示输出存储区,MD4存储地址信息。

5)、32位指针三种寻址方法

①直接输入10进制数寻址(最复杂最不直观的寻址方式,不推荐使用)。

②将输入的10进制数左移3位进行寻址(比较直观的寻址方式)。

③利用 P#字节.位 格式进行寻址(最直观最方便的寻址方式,推荐使用)。

6)、32位指针三种寻址方法举例

例1:直接输入10进制数寻址

该程序实现的是两个数相加的功能。

这里我们要重点理解为什么第六句将10传送到了MW4中,而不是MW32中,为什么第八句将15传送到了MW6中,而不是MW48中。

这是因为32,和48存放到指针中是按照32位二进制数进行存放的,下面我们通过将48存放到MD24来进行举例说明

由上图可知将48放进MD24则MW[MD24]指向了MW6

例2:左移3为进行寻址

由于将10进制数对应的2进制数左移三位后,字节存储区的二进制数和该10进制数对应的2进制数又相同了,而位存储区变为0,所以这样的寻址要比例1的寻址方式显得更为直观,便于使用和理解。

例3:以 P#字节.位 格式进行寻址

通过这个实例我们可以发现直接使用P#字节.位的寻址方式是最直观方便的。

B.寄存器间接寻址

寄存器间接寻址使用的是CPU的地址寄存器AR1和AR2

B1)、寻址格式

区域标示符[AR1/AR2,P#X]

注:

①AR1/AR2表示地址寄存器AR1或者AR2,地址寄存器中只能存放地址。

②P#X表示偏移量X是偏移具体数值。

B2)、寄存器间接寻址示例

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

    关注

    114

    文章

    3631

    浏览量

    79546
  • 寻址方式
    +关注

    关注

    2

    文章

    22

    浏览量

    9906
收藏 人收藏

    评论

    相关推荐

    EtherCAT 数据帧格式和寻址方式简介

    EtherCAT是一个高实时性,高速和高效率的工业以太网技术,数据根据自身独有的数据帧格式进行可靠传输,本文主要针对EtherCAT的数据帧格式和寻址方式进行简单描述。EtherCAT的数据帧格式
    的头像 发表于 04-12 08:25 116次阅读
    EtherCAT 数据帧格式和<b class='flag-5'>寻址</b><b class='flag-5'>方式</b>简介

    ARM中的编码方式寻址方式有何不同?

    ARM中的编指方式寻址方式有何不同? ARM处理器是一种广泛应用的微处理器架构,被广泛用于移动设备、嵌入式设备以及智能家居等领域。在ARM架构中,编码方式
    的头像 发表于 01-29 18:10 384次阅读

    ARM指令的寻址方式有几种?试分别举例说明

    ARM指令的寻址方式有几种?试分别举例说明  ARM指令集的寻址方式有基址寻址、立即寻址、寄存器
    的头像 发表于 01-29 18:10 696次阅读

    浅谈PLC编程的字节寻址和字寻址

    在PLC编程时,字节或多字节的变量一般支持绝对地址寻址(比如,IW0、MD4等)。要想正确寻址,则必须要搞清楚寻址的规则。目前常见的规则有两种:字节寻址和字
    发表于 01-24 10:51 200次阅读
    浅谈PLC编程的字节<b class='flag-5'>寻址</b>和字<b class='flag-5'>寻址</b>

    简单介绍PLC存储器寻址规则

    在PLC编程时,字节或多字节的变量一般支持绝对地址寻址(比如,IW0、MD4等)。要想正确寻址,则必须要搞清楚寻址的规则。目前常见的规则有两种:字节寻址和字
    发表于 01-18 10:17 216次阅读
    简单介绍PLC存储器<b class='flag-5'>寻址</b>规则

    PLC里面的立即寻址、直接寻址、间接寻址你都搞懂了吗?

    我们都知道西门子200plc有三种寻址方式:立即寻址、直接寻址、间接寻址;这里主要给大家区分下直接和间接
    的头像 发表于 01-04 15:20 986次阅读
    PLC里面的立即<b class='flag-5'>寻址</b>、直接<b class='flag-5'>寻址</b>、间接<b class='flag-5'>寻址</b>你都搞懂了吗?

    PLC功能指令:数据类型和寻址方式

    要了解存储器的寻址方法,须先掌握其编址方法。S7 -200 SMART PLC的存储单元编址有一定的规律,它将存储器按功能不同划分成若干个区,如I区(输入继电器区)、Q区(输出继电器区)、M区、SM区、V区、L区等,由于每个区又有很多存储单元,因而这些单元需要进行编址。PLC存储区常采用以下
    发表于 12-07 09:43 346次阅读
    PLC功能指令:数据类型和<b class='flag-5'>寻址</b><b class='flag-5'>方式</b>

    SIMATIC S7-1500 PLC S7-SCL寻址详解

    寻址可分为直接寻址和间接寻址,以下分别介绍。
    的头像 发表于 12-04 09:29 1207次阅读
    SIMATIC S7-1500 PLC S7-SCL<b class='flag-5'>寻址</b><b class='flag-5'>详解</b>

    LED五种调光控制方式详解

    电子发烧友网站提供《LED五种调光控制方式详解.pdf》资料免费下载
    发表于 10-30 14:12 6次下载
    LED五种调光控制<b class='flag-5'>方式</b><b class='flag-5'>详解</b>

    DSP原理及应用第3章 TMS320C54x的数据寻址方式

    电子发烧友网站提供《DSP原理及应用第3章 TMS320C54x的数据寻址方式.ppt》资料免费下载
    发表于 10-09 16:34 0次下载
    DSP原理及应用第3章 TMS320C54x的数据<b class='flag-5'>寻址</b><b class='flag-5'>方式</b>

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

    将详细介绍这两种寻址方法及其在PLC中的应用。 一、PLC直接寻址 PLC直接寻址是指程序员直接访问一个特定的内存单元,包括位、字节、整数等。 PLC直接
    的头像 发表于 09-15 14:59 1663次阅读

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

    参数。而其中的间接寻址,也是一种经常使用的寻址方式。下面将从PLC中为什么要间接寻址?直接寻址不行吗?这两个方面来详细阐述。 为什么要间接
    的头像 发表于 09-15 14:59 1158次阅读

    plc间接寻址有什么用?

    plc间接寻址有什么用? PLC间接寻址是一个非常重要的概念,它是一种用于访问和控制PLC(可编程逻辑控制器)中的数据的技术。本文将从PLC间接寻址的定义和原理开始,深入探讨它的用途和优点,并简要
    的头像 发表于 09-15 14:59 1033次阅读

    如何区分西门子PLC的直接寻址和间接寻址

    我们都知道西门子200plc有三种寻址方式:立即寻址、直接寻址、间接寻址;这里主要给大家区分下直接和间接
    的头像 发表于 08-28 14:43 960次阅读
    如何区分西门子PLC的直接<b class='flag-5'>寻址</b>和间接<b class='flag-5'>寻址</b>

    常用传感器分类及其应用

    常用传感器分类及其应用
    的头像 发表于 07-02 14:31 2146次阅读
    常用传感器<b class='flag-5'>分类</b><b class='flag-5'>及其</b>应用