3.3.1 Memory Instruction Format
The Memory format is used to transfer data between registers and memory, to load an effec- tive address, and for subroutine jumps. It has the format shown in Figure
Figure 3–1: Memory Instruction Format
31 | 26 25 | 21 20 | 16 15 | 0 |
Opcode
Ra
Rb
Memory_disp
A Memory format instruction contains a
The displacement field is a byte offset. It is
The virtual address is used as a memory load/store address or a result value, depending on the specific instruction. The virtual address (va) is computed as follows for all memory format instructions except the load address high (LDAH):
va ← {Rbv + SEXT(Memory_disp)}
For LDAH the virtual address (va) is computed as follows:
va ← {Rbv + SEXT(Memory_disp*65536)}
3.3.1.1 Memory Format Instructions with a Function Code
Memory format instructions with a function code replace the memory displacement field in the memory instruction format with a function code that designates a set of miscellaneous instruc- tions. The format is shown in Figure
Figure 3–2: Memory Instruction with Function Code Format
31 | 26 25 | 21 20 | 16 15 | 0 |
Opcode
Ra
Rb
Function
The memory instruction with function code format contains a
There are two fields, Ra and Rb. The usage of those fields depends on the instruction. See Sec- tion 4.11.
Instruction Formats