TABLE D.4 (Continued) Mnemonic (Name) Size Operands dst Operation performed src HLT (Halt) CC flags affected S Z O C Halts execution until resetor external interrupt occurs IDIV (Signed divide) B,D reg mem for B: [AL]/[src]; AL quotient; AH remainder for D: [EAX]/[src]; EAX quotient; EDX remainder ? ? ? ? IMUL (Signed multiplication) B,D reg mem (double-lengthproduct) for B: AX [AL] [src] for D: EDX,EAX [EAX] [src] ? ? x x reg mem (single-length product) reg [reg] [src] ? ? x x x x x D reg reg IN (Isolated input) B,D dst = AL or EAX src = imm8 or [DX] AL or EAX [src] INC (Increment) B,D reg mem dst [dst] + 1 INT (Software interrupt) D imm8 Push EFLA GS; Push EIP; EIP address (determinedby imm8) Table D.4 – page 3 TABLE D.4 (Continued) Mnemonic (Name) Size Operands dst IRET (Return from interrupt) D Operation performed src Pop EIP; Pop EFLA GS CC flags affected S Z O C x x x x mem reg EA of src LEA D (Load effective address) reg LOOP (Loop) D target ECX [ECX] – 1; If ( [ECX] 0 ) EIP target LOOPE (Loop on equal/zero) D target ECX [ECX] – 1; If ( [ECX] 0 ^ [Z]= 1 ) EIP target LOOPNE (Loop on not equal/ not zero) D target ECX [ECX] – 1; If ( [ECX] 0 ^ [Z] 1 ) EIP target MOV (Move) B,D reg reg mem reg mem reg dst [src] mem reg imm imm MOVSX (Sign extend byte into register) B reg reg reg reg sign extend [src] mem Table D.4 – page 4 T ABLE D.4 (Continued) Mnemonic (Name) Size MOVZX (Zero extend byte into register) B MUL (Unsigned multiplication) B,D NEG (Negate) B,D Operands Operation performed CC flags affected dst src reg reg reg mem reg zero extend [src] reg mem reg mem NOP (No operation) S Z O C (double-length product) for B: AX [AL] [src] for D: EDX,EAX [EAX] [src] ? ? x x dst 2's-complement [dst] x x x x x x 0 0 alias for: XCHG EAX,EAX dst [dst] NOT (Logical complement) B,D reg mem OR (Logical OR) B,D reg reg mem reg mem OUT (Isolated output) B,D dst = imm8 or [DX] src = AL or EAX reg mem reg imm imm dst [dst] [src] dst [AL] or [EAX] Table D.4 – page 5 TABLE D.4 (Continued) Mnemonic (Name) Size Operands dst Operation performed CC flags affected src S Z O C dst [[ESP]]; ESP [ESP] + 4 POP (Pop off stack) D POPAD (Pop off stack into all registers except ESP) D PUSH (Push onto stack) D PUSHAD (Push all registers onto stack) D RCL (Rotate left with C flag) B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.32b; src operand is rotation count ? x RCR (Rotate right with C flag) B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.32d; src operand is rotation count ? x RET (Return from subroutine) reg mem Pop eight doublewords off stack into EDI, ESI, EBP, discard, EBX, EDX, ECX, EAX; ESP [ESP] + 32 reg mem imm ESP [ESP] – 4; [ESP] [src] Push contents of EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI onto stack; ESP [ESP] – 32 EIP [[ESP]]; ESP [ESP] + 4 Table D.4 – page 6 TABLE D.4 (Continued) Mnemonic (Name) Size Operands dst src Operation performed CC flags affected S Z O C ROL (Rotate left) B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.32a; src operand is rotation count ? x ROR (Rotate right) B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.32c; src operand is rotation count ? x SAL (Shift arithmetic left) sameas SHL B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.30a; src operand is shift count x x ? x SAR (Shift arithmetic right) B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.30c; src operand is shift count x x ? x SBB (Subtract with borrow) B,D reg reg mem reg mem reg mem reg imm imm dst [dst] – [src] – [CF] x x x x SHL (Shift left) sameas SAL B,D reg reg mem mem imm8 CL imm8 CL SeeFigure 2.30a; src operand is shift count x x ? x Table D.4 – page 7 TABLE D.4 (Continued) Mnemonic (Name) SHR (Shift right) Size B,D Operands dst src reg reg mem mem imm8 CL imm8 CL Operation performed SeeFigure 2.30b; src operandis shift count CC flags affected S Z O C x x ? x CF 1 STC (Set carry flag) 1 IF 1 STI (Set interrupt flag) SUB (Subtract) B,D reg reg mem reg mem reg mem reg imm imm dst [dst] – [src] x x x x TEST (Test) B,D reg mem reg mem reg reg imm imm [dst] ^ [src]; set flagsbased on result x x 0 0 XCHG (Exchange) B,D reg reg reg mem [reg] [src] XOR (Exclusive OR) B,D reg reg mem reg mem reg mem reg imm imm dst [dst] [src] x x 0 0 Table D.4 – page 8 T ABLE D.5 IA-32 conditionaljump instructions Mnemonic Condition name Conditioncode test JS JNS JE/JZ JNE/JNZ JO JNO JC/JB JNC/JAE JA JBE JGE JL JG JLE Sign (negative) No sign (positive or zero) Equal/Zero Not equal/Not zero Overflow No overflow Carry/Unsignedbelow No carry/Unsignedabove or equal Unsigned above Unsigned below or equal Signed greater than or equal Signed less than Signed greater than Signed less than or equal SF = 1 SF = 0 ZF = 1 ZF = 0 OF = 1 OF = 0 CF = 1 CF = 0 CF ZF = 0 CF ZF = 1 SF OF = 0 SF OF = 1 ZF (SF OF) = 0 ZF (SF OF) = 1
© Copyright 2026 Paperzz