-
相對尋址
鎖定
- 中文名
- 相對尋址
- 概 念
- 以當前程序計數器pc的內容為基址
- 尋址方式
- PC
- 目的地址
- =源地址+rel
- 類 型
- 計算機科學術語
相對尋址概念
以當前程序計數器pc的內容為基址,加上指令給出的一字節補碼數(偏移量)形成新的pc值的尋址方式稱為相對尋址。隱含引用的專用寄存器是程序計數器(PC),即EA=A+(PC),它是當前PC的內容加上指令字段中A的值。一般來説,地址字段的值在這種操作下被看成2的補碼數的值。因此有效地址是對當前指令地址的一個上下範圍的偏移,他基於程序的局部性原理。使用相對尋址可節省指令中的地址位數,也便於程序在內存中成塊搬動。
相對尋址尋址方式
相對尋址PC
直接尋址、寄存器間接尋址、寄存器相對尋址、基址加變址尋址和相對基址加變址尋址,這五種尋址方式屬於存儲器尋址,用於説明操作數所在存儲單元的地址。由於總線接口單元BIU能根據需要自動引用段寄存器得到段值,所以這五種方式也就是確定存放操作數的存儲單元有效地址EA的方法。有效地址EA是一個16位的無符號數,在利用這五種方法計算有效地址時,所得的結果認為是一個無符號數。除了這些基本的尋址方式外,還有固定尋址和I/O端口尋址等。
相對尋址單片機
計算機中的尋址方式是非常重要的概念。所謂尋址方式就是尋找操作數的方法。只有找到相應存儲單元中的操作數,才能進行相關操作。程序執行的過程其實就是不斷地在存儲單元中尋找操作數並對操作數進行特定操作的過程。一般來説,指令的尋址方式越多,意味着指令的功能也越強。
8051單片機設有轉移指令,分為直接轉移指令和相對轉移指令兩種。相對轉移指令需要採用相對尋址方式。此時指令的操作數部分給出的是地址的相對偏移量。在指令中以“rel”表示相對偏移量,rel為一個帶符號的常數,可正可負(若rel為負,用補碼表示)。一般將相對轉移指令本身所在的地址稱為源地址,轉移後的地址稱為目的地址,它們的關係為:
目的地址=源地址+rel
例如,指令:
SJMP rel
這條指令的機器碼為80,rel,共兩個字節,比如該指令所在的源地址為2000H,rel的值為54H,則轉移後的地址為2000H+02+54H=2056H。