Page 41 -
P. 41
##4 立即定址法(Immediate Addressing)
##5 索引定址法(Indexed Addressing)
##6 位元定址法(Bit Addressing)
分述如下:
##1 直接定址法
所謂直接定址法,就是在指令中,直接指定運算元所在的位址。僅適用於內部資料
記憶體(RAM)及特殊功能暫存器(SFR)。例如:
MOV A,3FH ;把位址 3FH 的內容存入累加器 A。
ADD A,30H ;把位址 30H 的內容加到累加器 A。
##2 間接定址法
間接定址法是把運算元的位址存放在一個暫存器,這個暫存器就是運算元位址的指
標(POINTER),8051/8052 內部具有這種存取位址功能的暫存器有 RO,Rl,SP,DPTR。
間接定址法的前置符號為"@" 。
RO,R1 是 8 位元的暫存器,我們可以用來定址內部 RAM 和外部橫充 RAM 的前
面 256 BYTE(位址 00H-FFH)例如:
MOV RO,#70H
MOV A,@R0 ;把內部 RAM 位址 70H 的內容存入累加器 A。
MOVX A,@RO ;把外部 RAM 位址 70H 的內容存入累加器 A。
SP 是堆疊指標(STACK POINTER)暫存器,也是 8 位元的暫存器。它是堆疊區存放或
取出資料的位址指示。例如:
PUSH 3OH
是將 RAM 位址 30H 的內容,存入堆疊區,而存入的位址,就是由 SP 暫存器所
指定。例如執行上面的指令時,SP=50H,就是把位址 30 H 的內容存放在記憶體位址 51H
內。