OVERVIEW OF THE 80C186 FAMILY ARCHITECTURE

2.2.1.1Data Transfer Instructions

The instruction set contains 14 data transfer instructions. These instructions move single bytes and words between memory and registers. They also move single bytes and words between the AL or AX register and I/O ports. Table 2-3 lists the four types of data transfer instructions and their functions.

Table 2-3. Data Transfer Instructions

General-Purpose

MOV

 

Move byte or word

 

 

 

PUSH

 

Push word onto stack

 

 

 

POP

 

Pop word off stack

 

 

 

PUSHA

 

Push registers onto stack

 

 

 

POPA

 

Pop registers off stack

 

 

 

XCHG

 

Exchange byte or word

 

 

 

XLAT

 

Translate byte

 

 

 

 

 

Input/Output

 

 

 

IN

 

Input byte or word

 

 

 

OUT

 

Output byte or word

 

 

 

 

Address Object and Stack Frame

 

 

 

LEA

 

Load effective address

 

 

 

LDS

 

Load pointer using DS

 

 

 

LES

 

Load pointer using ES

 

 

 

ENTER

 

Build stack frame

 

 

 

LEAVE

 

Tear down stack frame

 

 

 

 

Flag Transfer

 

 

 

LAHF

 

Load AH register from flags

 

 

 

SAHF

 

Store AH register in flags

 

 

 

PUSHF

 

Push flags from stack

 

 

 

POPF

 

Pop flags off stack

 

 

 

Data transfer instructions are categorized as general purpose, input/output, address object and flag transfer. The stack manipulation instructions, used for transferring flag contents and instruc- tions used for loading segment registers are also included in this group. Figure 2-11 shows the flag storage formats. The address object instructions manipulate the addresses of variables in- stead of the values of the variables.

2-18

Page 47
Image 47
Intel 80C186XL, 80C188XL user manual Data Transfer Instructions, General-Purpose, Input/Output