Explanation : The current value of Stack pointer is (016E)16 The value of SP after following operations is asked in question (1) Store the current value of PC in the stack. This operation increments SP by 2 bytes as size of PC is given 2 bytes in question. So (016E)16 + 2 = (0170)16 (2) Store the value of PSW register in the stack. This operation also increments SP by 2 bytes as size of PSW is also given 2 bytes. So (0170)16 + 2 = (0172)16 (3) Load the starting address of the subroutine in PC. The Load operation doesn't change SP. So new value of SP is (0172)16