指令系统——数据寻址(2)(详解)
生活随笔
收集整理的這篇文章主要介紹了
指令系统——数据寻址(2)(详解)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、總覽
二、偏移尋址
注:基址寄存器是面向操作系統(tǒng)的,其內(nèi)容由操作系統(tǒng)或管理程序確定。在程序執(zhí)行過程中,基址寄存器的內(nèi)容不變(作為基地址),形式地址可變(作為偏移量)。
當采用通用寄存器作為基址寄存器時,可由用戶決定哪個寄存器作為基址寄存器,但其內(nèi)容仍由操作系統(tǒng)確定。
優(yōu)點:可擴大尋址范圍(基址寄存器的位數(shù)大于形式地址A的位數(shù));用戶不必考慮自己的程序存于主存的哪一空間區(qū)域,故有利于多道程序設(shè)計,以及可用于編制浮動程序。
變址尋址:有效地址EA等于指令字中的形式地址A與變址寄存器lX的內(nèi)容相加之和,即EA=(IX)+A,其中X為變址寄存器(專用),也可用通用寄存器作為變址寄存器。
注:變址寄存器是面向用戶的,在程序執(zhí)行過程中,變址寄存器的內(nèi)容可由用戶改變(作為偏移量),形式地址A不變(作為基地址)。
優(yōu)點:可擴大尋址范圍(變址寄存器的位數(shù)大于形式地址A的位數(shù));在數(shù)組處理過程中,可設(shè)定A為數(shù)組的首地址,不斷改變變址寄存器lX的內(nèi)容,便可很容易形成數(shù)組中任一數(shù)據(jù)的地址,特別適合編制循環(huán)程序。
相對尋址:把程序計數(shù)器PC的內(nèi)容加上指令格式中的形式地址A而形成操作數(shù)的有效地址,即EA=(PC)+A,其中A是相對于當前指令地址的位移量,可正可負,補碼表示。
優(yōu)點:操作數(shù)的地址不是固定的,它隨著PC值的變化而變化,并且與指令地址之間總是相差一個固定值,因此便于程序浮動。相對尋址廣泛應(yīng)用于轉(zhuǎn)移指令。
相對尋址舉例:
某機器指令字長為16位,主存按字節(jié)編址,取指令時,每取一個字節(jié)PC自動加1。當前指令地址為2000H,指令內(nèi)容為相對尋址的無條件轉(zhuǎn)移指令,指令中第一個字節(jié)為操作碼,第二個字節(jié)為形式地址,當前形式地址為40H。
(1)求取指令后及指令執(zhí)行后PC內(nèi)容。
(2)若要求轉(zhuǎn)移到1F00H,求形式地址的內(nèi)容。
三、總結(jié)
總結(jié)
以上是生活随笔為你收集整理的指令系统——数据寻址(2)(详解)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 四、MyBatis 框架 Dao 动态代
- 下一篇: java信息管理系统总结_java实现科