GATE | GATE-CS-2007 | Question 73
Consider the data given in above questions. Assume that the memory is byte addressable and the word size is 32 bits. If an interrupt occurs during the execution of the instruction “INC R3”, what return address will be pushed on to the stack?
(A) 1005
(B) 1020
(C) 1024
(D) 1040
Answer: (C)
Explanation: Explanation:
If memory is byte addressable so for each instruction it requires 1 word that is equal to 4 bytes which require 4 addresses
Instruction | Word | location |
MOV R1,3000 | 2 | 1000-1007 |
MOV R2,R1 | 1 | 1008-1011 |
ADD R2,R1 | 1 | 1012-1015 |
MOV(R3),R2 | 1 | 1016-1019 |
INC R3 | 1 | 1020-1023 |
DEC R1 | 1 | 1024-1027 |
Interrupt occur during execution of instruction INC R3. So CPU will complete the execution of this instruction and push the next address 1024 in the stack. So after interrupt service program can be resumed for next instruction.
So (C) is correct option.
Quiz of this Question
Please Login to comment...