Byte Addressable Memory Endianness
Mixing up byte order when reading a 32-bit word from a byte-addressable memory is the most common cause of data corruption in embedded systems. A 32-bit processor writes four consecutive bytes to memory starting at base address 0x1000. The sequence of byte writes is 0xAA to 0x1000, 0xBB to 0x1001, 0xCC to 0x1002, and 0xDD to 0x1003. A subsequent 32-bit read operation is performed at the word-aligned address 0x1000. Determine the 32-bit hexadecimal value returned by the read operation under both Little Endian and Big Endian memory architectures.
Constraints
- The memory is strictly byte-addressable.
- The processor data bus and registers are 32 bits wide.
- Hexadecimal answers must be formatted with the
0xprefix and use uppercase letters.
Topics
Solve this problem
Place the gates, wire them up and watch the signals settle. Every submission runs on the same simulation engine that grades it.
This problem is part of Codiode Pro. The statement above is free to read.
The circuit builder and code editor need a desktop screen. On a phone, read the problem here and open it on a laptop to solve.