Pseudoinstructions: Data transfer (memory) | |||||||||||||
Load a word into memory with a 32-bit offset (called big). | |||||||||||||
Notice that this is normally not allowed, because only 16-bit offsets are permitted. | |||||||||||||
Instruction | Real instructions | Semantics | |||||||||||
lw $rt, big($rs) | lui $at, upper( big ) | Addr <-- R[s] + big | |||||||||||
ori $at, $at, lower( big ) | R[t] <-- M4[ Addr ] | ||||||||||||
add $at, $rs, $at | |||||||||||||
lw $rt, 0($at) | |||||||||||||
Similar pseudo-instructions exist for sw, etc. | |||||||||||||
Other size load, store: | |||||||||||||
ld, sd | doubleword | ||||||||||||
ulh, ulw, ush, usw | unaligned halfword, word | ||||||||||||