【計算機組成原理】尋址方式


尋址方式指根據地址碼形成操作數地址或指令地址的方法。

實質—地址編碼方式的逆,即地址=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中,例如返回指令,順序尋址等

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM