EXTEND 11110 |
offset 10:5 |
offset 15:11 |
SB 11000 |
rx |
ry |
offset 4:0 |
5 |
6 |
5 |
5 |
3 |
3 |
5 |
SB ry, offset(rx) |
MIPS16e |
Store Byte (Extended) |
Store Byte (Extended)
To store a byte to memory.
memory[GPR[rx] + offset] = GPR[ry]
The 16-bit offsetis sign-extended and then added to the contents of GPR rx to form the effective address. The leastsignificant byte of GP
ry is stored at the effective address.
None
vAddr = sign_extend(offset) + GPR[Xlat(rx)] (pAddr, CCA) = AddressTranslation (vAddr, DATA, STORE) pAddr = pAddrPSIZE-1..2 || (pAddr1..0 xor ReverseEndian2) bytesel = vAddr1..0 xor BigEndianCPU2 dataword = GPR[rt]31-8*bytesel..0 || 08*bytesel StoreMemory (CCA, BYTE, dataword, pAddr, vAddr, DATA)
TLB Refill, TLB I valid, TLB Modified, Bus Erro , Address Error