80386

2.4.2 80386 Instructions

 

Table 2-2a Data Transfer

 

GENERAL PURPOSE

MOV

Move operand

PUSH

Push operand onto stack

POP

Pop operand off stack

PUSHA

Push all registers on stack

POPA

Pop all registers off stack

XCHG

Exchange Operand, Register

XLAT

Translate

 

CONVERSION

MOVZX

Move byte or Word, Dword, with zero

 

extension

MOVSX

Move byte or Word, Dword, sign

 

extended

CBW

Convert byte to Word, or Word to Dword

CWO

Convert Word to DWORD

CWDE

Convert Word to DWORD extended

COO

Convert DWORD to aWORD

 

INPUT!OUTPUT

IN

Input operand from I/O space

OUT

Output operand to I/O space

 

ADDRESS OBJECT

LEA

Load effective address

LOS

Load pointer into 0 segment register

LES

Load pointer into E segment register

LFS

Load pointer into F segment register

LGS

Load pOinter into G segment register

LSS

Load pointer into S (Stack) segment

 

register

 

FLAG MANIPULATION

LAHF

Load A register from Flags

SAHF

Store A register in Flags

PUSHF

Push flags onto stack

POPF

Pop flags off stack

PUSHFD

Push EFlags onto stack

POPFD

Pop EFlags off stack

CLC

Clear Carry Flag

CLD

Clear Direction Flag

CMC

Complement Carry Flag

STC

Set Carry Flag

STD

Set Direction Flag

Table 2-2b Arithmetic Instructions

 

ADDITION

ADD

Add operands

ADC

Add with carry

INC

Increment operand by 1

AAA

ASCII adjust for addition

DAA

Decimal adjust for addition

 

SUBTRACTION

SUB

Subtract operands

SBB

Subtract with borrow

DEC

Decrement operand by 1

NEG

Negate operand

CMP

Compare operands

DAS

Decimal adjust for subtraction

AAS

ASCII Adjust for subtraction

 

MULTIPLICATION

MUL

Multiply Double/Single Precision

IMUL

Integer multiply

AAM

ASCII adjust after multiply

 

DIVISION

DIV

Divide unsigned

IDIV

Integer Divide

AAD

ASCII adjust before division

 

Table 2-2c String Instructions

MOVS

Move byte or Word, Dword string

INS

Input string from I/O space

OUTS

Output string to I/O space

CMPS

Compare byte or Word, Dword string

SCAS

Scan Byte or Word, Dword string

LODS

Load byte or Word, Dword string

STOS

Store byte or Word, Dword string

REP

Repeat

REPE/

 

REPZ

Repeat while equal/zero

RENE!

 

REPNZ

Repeat while not equal/not zero

 

Table 2-2dLogical Instructions

 

LOGICALS

NOT

"NOT" operands

AND

"AND" operands

OR

"Inclusive OR" operands

XOR

"Exclusive OR" operands

TEST

"Test" operands

15

Page 76
Image 76
Intel manual 2 80386 Instructions, 2dLogical Instructions, 2a Data Transfer, 2b Arithmetic Instructions