Addressing Modes
Addressing Modes
Addressing Modes
Addressing Modes
Mode
Mode
Symbol Purpose
Symbol Purpose
Register
Register
Operate between Registers
Operate between Registers
Immediate
Immediate
#
#
Constants and Initialization
Constants and Initialization
Direct
Direct
@ General
@ General
-
-
purpose access to data
purpose access to data
Indirect
Indirect
*
*
Support for pointers
Support for pointers
–
–
access arrays,
access arrays,
lists, tables
lists, tables
(register)
(register)
(constant)
(constant)
(paged)
(paged)
(pointer)
(pointer)
Four main categories of addressing modes are available on the C28x. Register addressing mode
allows interchange between all CPU registers, convenient for solving intricate equations.
Immediate addressing is helpful for expressing constants easily. Direct addressing mode allows
information in memory to be accessed. Indirect addressing allows pointer support via dedicated
‘auxiliary registers’, and includes the ability to index, or increment through a structure. The C28x
supports a true software stack, desirable for supporting the needs of the C language and other
structured programming environments, and presents a stack-relative addressing mode for
efficiently accessing elements from the stack. Paged direct addressing offers general-purpose
single cycle memory access, but restricts the user to working in any single desired block of
memory at one time.
B - 4 C28x - Appendix B - Addressing Modes