Consider the following sequence of micro-operations. MBR ← PC MAR ← X PC ← Y…
20132013
Consider the following sequence of micro-operations.
MBR ← PC
MAR ← X
PC ← Y
Memory ← MBR
Which one of the following is a possible operation performed by this sequence?
- A.
Instruction fetch
- B.
Operand fetch
- C.
Conditional branch
- D.
Initiation of interrupt service
Attempted by 140 students.
Show answer & explanation
Correct answer: D
Answer: Initiation of interrupt service
Interpretation of the micro-operations:
MBR ← PC: copy the current program counter (return address) into the memory buffer register.
MAR ← X: set the target memory address where the return address will be stored.
PC ← Y: load the program counter with the interrupt service routine address (transfer control to the ISR).
Memory ← MBR: write the saved return address from the MBR into memory at the location in MAR.
Why this matches initiation of interrupt service:
The sequence saves the current PC (return address) into memory and then sets PC to a new address. This is the standard behavior when entering an interrupt: save the return address and jump to the interrupt handler.
Why the other choices are incorrect:
Instruction fetch: typically uses MAR ← PC followed by MBR ← Memory (reading an instruction into MBR). The given sequence writes the PC to memory instead of reading an instruction.
Operand fetch: normally reads an operand from memory into the MBR (MBR ← Memory after MAR ← operand address). The sequence shows writing the PC into memory, not fetching an operand.
Conditional branch: changes the PC when a condition is met, but does not generally save the PC to memory before changing it. The explicit save to memory here indicates saving a return address for a service routine rather than a simple branch.