HMS81C4x60
8.4 Addressing Mode
The GMS81C4x60 uses six addressing modes;
• Register addressing
• Immediate addressing
• Direct page addressing
• Absolute addressing
• Indexed addressing
• Register-indirect addressing
(1) Register Addressing
Register addressing accesses the A, X, Y, C and PSW.
(2) Immediate Addressing → #imm
In this mode, second byte (operand) is accessed as a data
immediately.
Example:
FE0435 ADC #35H
MEMORY
04
A+35H+C → A
35
When G-flag is 1, then RAM address is defined by 16-bit
address which is composed of 8-bit RAM paging register
(RPR) and 8-bit immediate data.
Example: G=1, RPR=01H
E45535 LDM 35H,#55H
0135H
data
~~
þ
0F100H
E4
0F101H
55
0F102H
35
data ← 55H
~~
À
(3) Direct Page Addressing → dp
In this mode, a address is specified within direct page.
Example; G=0
E551: C535 LDA 35H
;A ←RAM[35H]
35H
data
~~
0E550H
C5
0E551H
35
~~ þ
À
data → A
þ : direct page
(4) Absolute Addressing → !abs
Absolute addressing sets corresponding memory data to
Data, i.e. second byte (Operand I) of command becomes
lower level address and third byte (Operand II) becomes
upper level address.
With 3 bytes command, it is possible to access to whole
memory area.
ADC, AND, CMP, CMPX, CMPY, EOR, LDA, LDX,
LDY, OR, SBC, STA, STX, STY
Example;
F100: 0735F0 ADC !0F035H ;A ←ROM[0F035H]
0F035H
data
~~
0F100H
07
0F101H
35
0F102H
F0
~~
þ
À
A+data+C → A
address: 0F035
28
November 2001 Ver 1.1