Data Transfer Instructions

Instruction Description Example
MOV Copies data from a source operand to a destination operand. mov eax, ebx
MOVZX Copies the contents of a source operand into a destination operand and zero-extends the value to either 16 or 32 bits. movzx eax, bx
MOVSX Copies the contents of a source operand into a destination operand and sign-extends the value to either 16 or 32 bits. movsx eax, bl
LAHF Copies the low byte of the EFLAGS register into AH. lahf
SAHF Copies AH into the low byte of the EFLAGS register. sahf
XCHG Exchanges the contents of two operands xchg ah, al

Basic Program Execution Registers

 
32-bit
16-bit 16-bit
  SI
ESI
 
32-bit
16-bit 16-bit
  DI
EDI
 
32-bit
16-bit 16-bit
  BP
EBP
 
32-bit
16-bit 16-bit
  SP
ESP