Texas Instruments MSP430x4xx User Manual
Page 88

Instruction Set
3-54
RISC 16−Bit CPU
* POP[.W]
Pop word from stack to destination
* POP.B
Pop byte from stack to destination
Syntax
POP
dst
POP.B
dst
Operation
@SP −> temp
SP + 2 −> SP
temp −> dst
Emulation
MOV
@SP+,dst or MOV.W @SP+,dst
Emulation
MOV.B
@SP+,dst
Description
The stack location pointed to by the stack pointer (TOS) is moved to the
destination. The stack pointer is incremented by two afterwards.
Status Bits
Status bits are not affected.
Example
The contents of R7 and the status register are restored from the stack.
POP
R7
; Restore R7
POP
SR
; Restore status register
Example
The contents of RAM byte LEO is restored from the stack.
POP.B
LEO
; The low byte of the stack is moved to LEO.
Example
The contents of R7 is restored from the stack.
POP.B
R7
; The low byte of the stack is moved to R7,
; the high byte of R7 is 00h
Example
The contents of the memory pointed to by R7 and the status register are
restored from the stack.
POP.B
0(R7)
; The low byte of the stack is moved to the
; the byte which is pointed to by R7
: Example:
R7 = 203h
;
Mem(R7) = low byte of system stack
: Example:
R7 = 20Ah
;
Mem(R7) = low byte of system stack
POP
SR
; Last word on stack moved to the SR
Note:
The System Stack Pointer
The system stack pointer (SP) is always incremented by two, independent
of the byte suffix.