The correct answer is: C. IP
The instruction pointer (IP) is a register in a computer processor that contains the address of the instruction that is currently being executed. When a processor is interrupted, control is transferred to the interrupt service routine (ISR), which is a section of code that handles the interrupt. The ISR typically saves the current state of the processor, including the value of the IP register, before executing the interrupt handler. After the interrupt handler has finished executing, the ISR restores the previous value of the IP register and resumes execution of the interrupted instruction.
The other options are incorrect because:
- M is a register that stores the value of the memory address currently being accessed by the processor.
- SVC is a system call instruction that is used to invoke a system service.
- MDR is a register that stores the value of the data that was last read from memory.
- None of the above is a register that stores the address of the instruction that is currently being executed.