Understanding Memory
Memory in MIPS is byte-addressable, meaning each byte has a unique address. MIPS uses a load-store architecture where you must load data from memory into registers before operating on it, then store results back to memory. This design keeps the CPU simple and fast.
Key Points:
- Memory is byte-addressable
- Load-store architecture requires explicit loads/stores
- Words must be aligned to 4-byte boundaries
- Addresses are 32-bit values
Example Code
# Memory is organized in bytes
# Address 0x1000: [byte] [byte] [byte] [byte]
# Address 0x1004: [byte] [byte] [byte] [byte]
# Word = 4 bytes (32 bits)
# Halfword = 2 bytes (16 bits)
# Byte = 1 byte (8 bits)
# Memory addresses must be aligned:
# Words at addresses divisible by 4
# Halfwords at addresses divisible by 2Try It Yourself
1
2
3
4
5
6
7
8
9
10
11