293 views
A stack based CPU executes the instruction. Memory location $500$ contain $0X 88$ and memory location $700$ contain $0X37$. The stack pointer is at $0X003F$

The instruction are as follows:

$I_{1}:PUSH$  $500$

$I_{2}:PUSH$. $700$

$I_{3}:ADD$

$I_{4}:POP$. $600$

$I_{5}:PUSH$  $300$

Now which of the following is correct?

$A)$ Stack pointer will be $0X0040$ after executing instructions.

$B)$  Memory location $0X40$ contain $0X88$ after execution of instruction.

$C)$  Memory location $600$ contain $0XBF$ after execution of instruction.

$D)$ Both $a)$ and $c)$
in DS
0
Option (C):
0
As there will not be any change in memory location 40 after the execution of the above set of instructions so option B) should also be true...

and memory location 600 contains 0XBF so C) is true.

i.e. both B) & c) should be the correct Answers.
0
Since 0X88 is initially stored at memory location 500 then how will 0X88 move to 0X40.

Memory location 0X40 never stored 0X88

## Related questions

1 vote
1
385 views
There is given a infix expression: ${\color{Red} {1}}$ $A+B\times C/\left ( \left ( D+E \right )+F\times G \right )$ While converting infix expression to postfix expression number of symbols in the stack at indicated ${\color{Red} {point-1}}$ infix expression (assume stack is initially empty) ______________ they told $5$, but is it correct? Can anyone give some explanation??
1 vote