【计算机组成原理】寻址方式

寻址方式指根据地址码形成操作数地址或指令地址的方法。

实质—地址编码方式的逆,即地址=f(地址码)       

目标—缩短地址码长度,方便(编译程序)形成地址码

指令中的MEM地址:

有效地址(EA)——指令中形成的存储单元地址(逻辑地址,注意不是物理地址);{逻辑地址:程序在存储器中的地址;物理地址:程序在主存中的地址}

形式地址(A)——地址码中给出的地址;

一、指令寻址方式 

顺序寻址:EA=(PC)+“1”;

由于顺序寻址的地址形成与当前指令无关,且只有一种,故通常用隐含寻址方式表示,指令字中没有指令地址码;

跳跃寻址:PC=对IR的计算结果,下条指令地址由当前指令产生;

跳跃寻址与当前指令有关,且可能有多种,故通常显示地用地址码表示;

下条指令形成时间:

二、数据寻址方式

寻址方式识别:译码

地址码格式:

按照OPD存放位置的不同,大致有以下七种寻址方式(以单地址指令为例):

 1、OPD存放在REG中

      i)立即寻址方式

          OPD存放在指令REG中,地址参数为OPD本身;

      ii)寄存器寻址方式

          OPD存放在数据REG中,地址参数为数据REG编号;

2、OPD存放在MEM中

      iii)直接寻址方式

          OPD存放在MEM中,地址参数为OPD的EA;

      iv)间接寻址方式

          OPD存放在MEM中,地址参数为存放OPD的EA的EA;

因需要多访存一次,故使用较少,是用于**p的情况

      v)寄存器间接寻址方式

          OPD存放在MEM中,地址参数为存放EA的地址寄存器编号;

 

      vi)变址寻址方式

          OPD存放在MEM中,地址参数为变址REG编号以及形式地址(基准地址);

特点:适用于数据块的访存(例如数组array[])

      vii)基址寻址方式

          OPD存放在MEM中,地址参数为基址REG编号以及形式地址(偏移量);

特点:适用于程序段的管理;

寄存器的常见组织:

(1)变址寄存器,基址寄存器常为地址寄存器的子集;

(2)数据寄存器与地址寄存器常混用,称作通用寄存器(GPR)

      viii)相对寻址(只有指令能使用该种寻址方式)

          指令放在MEM中,地址参数为形式地址(偏移量),基准地址隐含在PC中;

注意:A为有符号数,因为指令进行跳跃寻址时可以往前跳跃;通常基址寻址与变址寻址的A为无符号数(由ISA指定)

隐含寻址方式:无地址码,地址形成方式由操作码隐含指明

比如OPD恒为定值,R0<-(R0)+1中的1;(可变常数不能隐含,采用立即寻址方式)

又或OPD在栈顶或者固定的REG中,例如返回指令,顺序寻址等

 

posted @ 2021-11-21 17:37  天涯海角寻天涯  阅读(2633)  评论(0编辑  收藏  举报