2-5
OVERVIEW OF THE 80C186 FAMILY ARCHITECTURE
The data registers can be addressed by their upper or lower halves. Each data register can be used
interchangeably as a 16-bit register or two 8-bit registers. The pointer registers are always access-
ed as 16-bit values. The CPU can use data registers without constraint in most arithmetic and log-
ic operations. Arithmetic and logic operations can also use the pointer and index registers. Some
instructions use certain registers implicitly (see Table 2-1), allowing compact encoding.
The contents of the general-purpose registers are undefined following a processor reset.
2.1.4
Segment Registers
The 80C186 Modular Core family memory space is 1 Mbyte in size and divided into logical seg-
ments of up to 64 Kbytes each. The CPU has direct access to four segments at a time. The segment
registers contain the base addresses (starting locations) of these memory segments (see Figure
2-4). The CS register points to the current code segment, which contains instructions to be
fetched. The SS register points to the current stack segment, which is used for all stack operations.
The DS register points to the current data segment, which generally contains program variables.
The ES register points to the current extra segment, which is typically used for data storage. The
CS register initializes to 0FFFFH, and the SS, DS and ES registers initialize to 0000H. Programs
can access and manipulate the segment registers with several instructions.
Table 2-1. Implicit Use of General Registers
Register
Operations
AX
Word Multiply, Word Divide, Word I/O
AL
Byte Multiply, Byte Divide, Byte I/O, Translate, Decimal Arithmetic
AH
Byte Multiply, Byte Divide
BX
Translate
CX
String Operations, Loops
CL
Variable Shift and Rotate
DX
Word Multiply, Word Divide, Indirect I/O
SP
Stack Operations
SI
String Operations
DI
String Operations
Summary of Contents for 80C186XL
Page 1: ...80C186XL 80C188XL Microprocessor User s Manual...
Page 2: ...80C186XL 80C188XL Microprocessor User s Manual 1995...
Page 18: ...1 Introduction...
Page 19: ......
Page 27: ......
Page 28: ...2 Overview of the 80C186 Family Architecture...
Page 29: ......
Page 79: ......
Page 80: ...3 Bus Interface Unit...
Page 81: ......
Page 127: ......
Page 128: ...4 Peripheral Control Block...
Page 129: ......
Page 137: ......
Page 138: ...5 ClockGenerationand Power Management...
Page 139: ......
Page 154: ...6 Chip Select Unit...
Page 155: ......
Page 178: ...7 Refresh Control Unit...
Page 179: ......
Page 193: ......
Page 194: ...8 Interrupt Control Unit...
Page 195: ......
Page 227: ......
Page 228: ...9 Timer Counter Unit...
Page 229: ......
Page 253: ......
Page 254: ...10 Direct Memory Access Unit...
Page 255: ......
Page 283: ......
Page 284: ...11 Math Coprocessing...
Page 285: ......
Page 302: ...12 ONCE Mode...
Page 303: ......
Page 306: ...A 80C186 Instruction Set Additions and Extensions...
Page 307: ......
Page 318: ...B Input Synchronization...
Page 319: ......
Page 322: ...C Instruction Set Descriptions...
Page 323: ......
Page 371: ......
Page 372: ...D Instruction Set Opcodes and Clock Cycles...
Page 373: ......
Page 396: ...Index...
Page 397: ......