Instruction Set Description
194
SLAU367P – October 2012 – Revised April 2020
Copyright © 2012–2020, Texas Instruments Incorporated
CPUX
4.6.2.34 POP
* 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
MOV.B @SP+,dst
Description
The stack location pointed to by the SP (TOS) is moved to the destination. The SP is
incremented by 2 afterwards.
Status Bits
Status bits are not affected.
Example
The contents of R7 and the SR 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 SR 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:
System stack pointer
The system SP is always incremented by 2, independent of the byte suffix.