AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Syntax: LD Rd,<addr mode>
Operation: Rd = [<addr mode>]
Flags: None

This operation loads Rd from the contents of the <addr mode>
It can take several forms:
LD Rd,X     Load indirect
LD Rd,X+     Load indirect with post-increment
LD Rd,-X     Load indirect with pre-decrement
LD Rd,Y     Load indirect
LD Rd,Y+     Load indirect with post-increment
LD Rd,-Y     Load indirect with pre-decrement
LDD Rd,Y+q     Load indirect with displacement
LD Rd,Z     Load indirect
LD Rd,Z+     Load indirect with post-increment
LD Rd,-Z     Load indirect with pre-decrement
LDD Rd,Z+q     Load indirect with displacement

Indirect addressing
Syntax: LD Rd,{X|Y|Z}
Operation: Rd = [{X|Y|Z}]
Flags: None

This loads the register from the memory 
location pointed to by the X,Y or Z registers.

Example:
LD R5,X
LD R31,Z
Post-Increment addressing
Syntax: LD Rd,{X|Y|Z}+
Operation: Rd = [{X|Y|Z}] : {X|Y|Z} += 1
Flags: None

This loads the register from the memory 
location pointed to by the X,Y or Z registers,
and then increments the indirect register.

Example:
LD R5,X+
LD R31,Y+
Pre-decrement addressing
Syntax: LD Rd,-{X|Y|Z}
Operation: {X|Y|Z} -= 1 : Rd = [{X|Y|Z}]
Flags: None

This decrements the index register and then
loads the destination register from the memory 
location pointed to by the X,Y or Z registers.

Example:
LD R5,-Y
LD R31,-Z
Displaced addressing
Syntax: LD Rd,{Y|Z} + k
Operation: Rd = [{Y|Z} + k]
Flags: None

This loads the destination register from the memory 
location pointed to by the Y or Z registers + the
displacement provided in the instruction. k must be
less than 64.

Example:
LDD R5,Y + 31
LDD R31,Z + 10

[sh-index] Back to list of manuals