Assume that 16-bit CPU is trying to access a double word starting at an odd address. How many memory operations are required to access the data?
- A. 1
- B. 2
- C. 3
- D. 4
Answer: C. 3
Explanation: Double word = 32 bits = 4 bytes.\nAddress is odd. \n16-bit bus accesses aligned words (even address).\nAccess 1: Read byte at Odd (part of 1st word). (1 cycle? No, 16-bit fetch gets 2 bytes, picks 1).\nGenerally, accessing unaligned 32-bit data on 16-bit bus: \nByte 1 (Offset 1): 1 cycle (fetches 0-1, uses 1).\nBytes 2-3 (Offset 2-3): 1 cycle (aligned).\nByte 4 (Offset 4): 1 cycle (fetches 4-5, uses 4).\nTotal 3 cycles.