8086 User's Manual

219

Transcript of 8086 User's Manual

Page 1: 8086 User's Manual
Page 2: 8086 User's Manual

www.ceibo.com

MCS-86

8086 – 8088 – 80C86 – 80C88

Ceibo In-Circuit

Emulator

Supporting

MCS-86:

DS-186

http://ceibo.com/eng/products/ds186.shtml

Page 3: 8086 User's Manual

Chapter 1

Introduction

Manual Organization

8086 Family Architecture

Functional Distribution

- Microprocessors

- Interrupt Controller

- Bus Interface Components

Multiprocessing

Bus Organization

- Local Bus

- System Bus

- Processing Modules

- Bus Implementation Examples

Development Aids

Page 4: 8086 User's Manual

Chapter 2

The 8086 and 8088 Central Processing Units

Processor Overview

Processor Architecture - Execution Unit

- Bus Interface Unit

- General Registers

- Segment Register

- Instruction Pointer

- Flags

- 8080 /8085 Register and Flag Correspondance

- Mode Selection

Memory -Storage Organization

- Segmentation

- Physical address Generation

- Dynamically Relocatable Code

- Stack Implementation

- Dedicated and Reserved Memory Locations

-8086/8088 Memory Access Differences

Input/Output - Input/Output Space

- Restricted I/O Locations

- 8086/8088 Memory Access Differences

- Memory-Mapped I/O

- Direct Memory Access

- 8089 Input/Output Processor (IOP)

Page 5: 8086 User's Manual

Multiprocessing Features - Bus Lock

- WAIT and !TEST

- Escape

- Request / Grant Lines

- Multibus Architecture

-8289 Bus Arbiter

Processor Control and Monitoring - Interrupts

* External interrupts

* Internal Interrupts

* Interrupt Pointer Table

* Interrupt Procedures

* Single-step (Trap) Interrupt

* Breakpoint Interrupt

- System Reset

-Instruction Queue Status

- Processor halt

-Status Lines

Instruction Set - Data Transfer Instructions

* General Purpose Data Transfers

* Address Object Transfers

* Flag Transfers

- Arithmetic Instructions

* Arithmetic Data Formats

* Arithmetic Instructions and Flags

* Addition

* Substraction

* Multiplication

* Division

Page 6: 8086 User's Manual

-Bit Manipulation Instructions

* Logical

* Shifts

* Rotates

-String instructions

- Program Transfer Instructions

* Unconditional Transfers

* Iteration Control

* Interrupts Instructions

- Processor Control Instructions

* Flag Operations

* External Synchronization

* No Operation

- Instruction Set Reference Information

Addressing Modes - Register and Immediates Operands

- Memory Addressing Modes

* The Effective Address

* Direct Addressing

* Register Indirect Addressing

* Based Addressing

* Indexed Addressing

* Based Indexed Addressing

* String Addressing

- I/O Addressing

Programming Facilities -Software Development Overview

-PL/M-86

* Statements and Comments

* Data Definition

* Assignment Statement

* Program Flow Statements

* Procedures

-ASM-86

Page 7: 8086 User's Manual

* Statements

* Constants

* Defining Data

* Records

* Structures

* Addressing Modes

* Segment Controls

* Procedures

LINK-86

LOC-86

LIB-86

OH-86

CONV-86

Sample Programs

Programming Guidelines and Examples

- Programming Guidelines

* Segments and Segment Registers

* Self Modifying Code

* Input/output

* Operating Systems

* Interrupt Service Procedures

* Stack-Based Parameters

* Flag Images

- Programming Examples

* Procedures

* Jump and Calls

* Records

* Dynamic Code Relocation

* Memory-Mapped I/O

* Breakpoints

* Interrupt Procedures

* String Operations

Page 8: 8086 User's Manual

Chapter 3

The 8089 INPUT / OUTPUT PROCESSOR

Processor Overview - Evolution

- Principles of Operation

* CPU/IOP Communications

* Channels

* Channel Programs (Task Blocks)

* DMA Transfers

* Bus Configurations

* A Sample Transaction

- Applications

Processor Architecture - Common Contro Unit (CCU)

- Arithmetic / Logic Unit (ALU)

- Assembly / Disassembly Registers

- Instruction Fetch Unit

- Bus Interface Unit (BIU)

Channels

* I/O Control

* Registers

* Program Status Word

* Tag Bits

* Concurrent Channel Operation

Memory - Storage Organization

- Dedicated and Reserved Memory Locations

- Dynamic Relacation

- Memory Access

Input /Output

Page 9: 8086 User's Manual

- Programmed I/O

* I/O Instructions

* Device Addressing

* I/O Bus Transfers

- DMA Transfers

* Preparing the Device Controller

* Preparing the channel

* Beginning the Transfer

* DMA Transfer Cycle

* Following the Transfer

Multiprocessing Features - Bus Arbitration

* Request / Grant Line

* 8289 BusArbiter

* Bus Arbitration for IOP Configurations

- Bus Load Limit

- Bus Lock

Processor Control and Monitoring - Initialization

-Channel Commands

-DRQ (DMA Request)

-EXT (External Terminate)

-Interrupt

- Status Lines

Instruction Set - Data transfer Instructions

- Arithmetic Instructions

- Logical and Bit Manipulation Instructions

- Program Transfer Instructions

- Processor Control Instructions

- Instruction Set Reference Information

Page 10: 8086 User's Manual

Addressing Modes - Register and Immediate Operands

-Memory addressing Modes

* The Effective Address

* Based Addressing

* Offset Addressing

* Indexed Addressing

* Index Auto-Increment Addressing

Programming Facilities ASM-89

- Statements

- Constants

- Defining Data

- Structures

- Addressing Modes

- Program Transfer Targets

- Procedures

- Segment Control

- Intermodule Communication

- Sample Program

- Linking and locating ASM-89 Modules

Programming Guidelines and Examples - Programming Guidelines

- Segments

-Self-Modifying Code

- I/O System Design

-Programming Examples

Initialization and Dispatch

Memory-to-Memory Transfer

Saving and Restoring Registers

Page 11: 8086 User's Manual

Chapter 4

Hardware Reference Information

Introduction

8086 and 8088 CPUs - CPU Architecture

- Bus Operation

- Clock Circuit

- Minimum / Maximum Mode

* Minimum Mode

* Maximum Mode

- External Memory Addressing

- I/O Interfacing

- Interrupts

- Machine Instruction Encoding and Decoding

8086 Instruction Sequence

8089 I/O Processor -System Configuration

* Local Mode

* Remote Mode

- Bus Operation

- Initialization

- I/O Dispatching

- DMA Transfers

- DMA Termination

-Peripheral Interfacing

- Instruction Encoding

Page 12: 8086 User's Manual
Page 13: 8086 User's Manual
Page 14: 8086 User's Manual
Page 15: 8086 User's Manual
Page 16: 8086 User's Manual
Page 17: 8086 User's Manual
Page 18: 8086 User's Manual
Page 19: 8086 User's Manual
Page 20: 8086 User's Manual
Page 21: 8086 User's Manual
Page 22: 8086 User's Manual
Page 23: 8086 User's Manual
Page 24: 8086 User's Manual
Page 25: 8086 User's Manual
Page 26: 8086 User's Manual
Page 27: 8086 User's Manual
Page 28: 8086 User's Manual
Page 29: 8086 User's Manual
Page 30: 8086 User's Manual
Page 31: 8086 User's Manual
Page 32: 8086 User's Manual
Page 33: 8086 User's Manual
Page 34: 8086 User's Manual
Page 35: 8086 User's Manual
Page 36: 8086 User's Manual
Page 37: 8086 User's Manual
Page 38: 8086 User's Manual
Page 39: 8086 User's Manual
Page 40: 8086 User's Manual
Page 41: 8086 User's Manual
Page 42: 8086 User's Manual
Page 43: 8086 User's Manual
Page 44: 8086 User's Manual
Page 45: 8086 User's Manual
Page 46: 8086 User's Manual
Page 47: 8086 User's Manual
Page 48: 8086 User's Manual
Page 49: 8086 User's Manual
Page 50: 8086 User's Manual
Page 51: 8086 User's Manual
Page 52: 8086 User's Manual
Page 53: 8086 User's Manual
Page 54: 8086 User's Manual
Page 55: 8086 User's Manual
Page 56: 8086 User's Manual
Page 57: 8086 User's Manual
Page 58: 8086 User's Manual
Page 59: 8086 User's Manual
Page 60: 8086 User's Manual
Page 61: 8086 User's Manual
Page 62: 8086 User's Manual
Page 63: 8086 User's Manual
Page 64: 8086 User's Manual
Page 65: 8086 User's Manual
Page 66: 8086 User's Manual
Page 67: 8086 User's Manual
Page 68: 8086 User's Manual
Page 69: 8086 User's Manual
Page 70: 8086 User's Manual
Page 71: 8086 User's Manual
Page 72: 8086 User's Manual
Page 73: 8086 User's Manual
Page 74: 8086 User's Manual
Page 75: 8086 User's Manual
Page 76: 8086 User's Manual
Page 77: 8086 User's Manual
Page 78: 8086 User's Manual
Page 79: 8086 User's Manual
Page 80: 8086 User's Manual
Page 81: 8086 User's Manual
Page 82: 8086 User's Manual
Page 83: 8086 User's Manual
Page 84: 8086 User's Manual
Page 85: 8086 User's Manual
Page 86: 8086 User's Manual
Page 87: 8086 User's Manual
Page 88: 8086 User's Manual
Page 89: 8086 User's Manual
Page 90: 8086 User's Manual
Page 91: 8086 User's Manual
Page 92: 8086 User's Manual
Page 93: 8086 User's Manual
Page 94: 8086 User's Manual
Page 95: 8086 User's Manual
Page 96: 8086 User's Manual
Page 97: 8086 User's Manual
Page 98: 8086 User's Manual
Page 99: 8086 User's Manual
Page 100: 8086 User's Manual
Page 101: 8086 User's Manual
Page 102: 8086 User's Manual
Page 103: 8086 User's Manual
Page 104: 8086 User's Manual
Page 105: 8086 User's Manual
Page 106: 8086 User's Manual
Page 107: 8086 User's Manual
Page 108: 8086 User's Manual
Page 109: 8086 User's Manual
Page 110: 8086 User's Manual
Page 111: 8086 User's Manual
Page 112: 8086 User's Manual
Page 113: 8086 User's Manual
Page 114: 8086 User's Manual
Page 115: 8086 User's Manual
Page 116: 8086 User's Manual
Page 117: 8086 User's Manual
Page 118: 8086 User's Manual
Page 119: 8086 User's Manual
Page 120: 8086 User's Manual
Page 121: 8086 User's Manual
Page 122: 8086 User's Manual
Page 123: 8086 User's Manual
Page 124: 8086 User's Manual
Page 125: 8086 User's Manual
Page 126: 8086 User's Manual
Page 127: 8086 User's Manual
Page 128: 8086 User's Manual
Page 129: 8086 User's Manual
Page 130: 8086 User's Manual
Page 131: 8086 User's Manual
Page 132: 8086 User's Manual
Page 133: 8086 User's Manual
Page 134: 8086 User's Manual
Page 135: 8086 User's Manual
Page 136: 8086 User's Manual
Page 137: 8086 User's Manual
Page 138: 8086 User's Manual
Page 139: 8086 User's Manual
Page 140: 8086 User's Manual
Page 141: 8086 User's Manual
Page 142: 8086 User's Manual
Page 143: 8086 User's Manual
Page 144: 8086 User's Manual
Page 145: 8086 User's Manual
Page 146: 8086 User's Manual
Page 147: 8086 User's Manual
Page 148: 8086 User's Manual
Page 149: 8086 User's Manual
Page 150: 8086 User's Manual
Page 151: 8086 User's Manual
Page 152: 8086 User's Manual
Page 153: 8086 User's Manual
Page 154: 8086 User's Manual
Page 155: 8086 User's Manual
Page 156: 8086 User's Manual
Page 157: 8086 User's Manual
Page 158: 8086 User's Manual
Page 159: 8086 User's Manual
Page 160: 8086 User's Manual
Page 161: 8086 User's Manual
Page 162: 8086 User's Manual
Page 163: 8086 User's Manual
Page 164: 8086 User's Manual
Page 165: 8086 User's Manual
Page 166: 8086 User's Manual
Page 167: 8086 User's Manual
Page 168: 8086 User's Manual
Page 169: 8086 User's Manual
Page 170: 8086 User's Manual
Page 171: 8086 User's Manual
Page 172: 8086 User's Manual
Page 173: 8086 User's Manual
Page 174: 8086 User's Manual
Page 175: 8086 User's Manual
Page 176: 8086 User's Manual
Page 177: 8086 User's Manual
Page 178: 8086 User's Manual
Page 179: 8086 User's Manual
Page 180: 8086 User's Manual
Page 181: 8086 User's Manual
Page 182: 8086 User's Manual
Page 183: 8086 User's Manual
Page 184: 8086 User's Manual
Page 185: 8086 User's Manual
Page 186: 8086 User's Manual
Page 187: 8086 User's Manual
Page 188: 8086 User's Manual
Page 189: 8086 User's Manual
Page 190: 8086 User's Manual
Page 191: 8086 User's Manual
Page 192: 8086 User's Manual
Page 193: 8086 User's Manual
Page 194: 8086 User's Manual
Page 195: 8086 User's Manual
Page 196: 8086 User's Manual
Page 197: 8086 User's Manual
Page 198: 8086 User's Manual
Page 199: 8086 User's Manual
Page 200: 8086 User's Manual
Page 201: 8086 User's Manual
Page 202: 8086 User's Manual
Page 203: 8086 User's Manual
Page 204: 8086 User's Manual
Page 205: 8086 User's Manual
Page 206: 8086 User's Manual
Page 207: 8086 User's Manual
Page 208: 8086 User's Manual
Page 209: 8086 User's Manual
Page 210: 8086 User's Manual
Page 211: 8086 User's Manual
Page 212: 8086 User's Manual
Page 213: 8086 User's Manual
Page 214: 8086 User's Manual
Page 215: 8086 User's Manual
Page 216: 8086 User's Manual
Page 217: 8086 User's Manual
Page 218: 8086 User's Manual
Page 219: 8086 User's Manual