Pop Word off Stack
Loads the value from the top of the stack to the location specified with the destination operand and then increments the stack pointer.
The destination operand can be a general-purpose register, memory location, or segment register.
The address-size attribute of the stack segment determines the stack pointer size (16 bits or 32 bits), and the operand-size attribute of the current code segment determines the amount the stack pointer is incremented (2 bytes or 4 bytes).
If the destination operand is one of the segment registers DS, ES, FS, GS, or SS, the value loaded into the register must be a valid segment selector.
In protected mode, popping a segment selector into a segment register automatically causes the descriptor information associated with that segment selector to be loaded into the hidden (shadow) part of the segment register and causes the selector and the descriptor information to be validated.
The POP instruction cannot pop a value into the CS register, instead, the RET instruction should be used.