
Figure 6.6: Return from interrupt |
Return from Interrupt :
- Interrupt service routine starts at location X and the return instruction is in location X + L.
- After fetching the return instruction, the value of program counter becomes X + L + 1.
- While returning to user's program, processor must restore the earlier values.
- From control stack, it restores the value of program counter and the general registers.
- Accordingly it sets the value of the top of the stack and accordingly stack pointer is updated.
- Now the processor starts execution of the user's program (interrupted program) from memory location N + 1.
The data changes of memory and registers during return from and interrupt is shown in the Figure 6.6. |