

















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
A comprehensive overview of the 8086 microprocessor architecture, covering key features such as memory segmentation, bus interface unit (biu), execution unit (eu), and register organization. It explains how the 8086 uses multiplexed address and data buses, instruction queues, and segment registers to manage memory and execute instructions efficiently. The document also details the functions of various registers, including segment registers, pointer registers, and flag registers, and how they contribute to the overall operation of the microprocessor. This is useful for students studying computer architecture and assembly language programming.
Typology: Schemes and Mind Maps
1 / 25
This page cannot be seen from the preview
Don't miss anything!


















ECEg-4701: Microcomputer and Interfacing
Architecture of 8086 Register Organization Bus Operation
Features of 8086
Features of 8086
8
Register Organization (^) General purpose registers: (^) The 8086 has four 16-bit general purpose registers labeled AX, BX, CX and DX. (^) They are used for holding data, variables and intermediate results temporarily. (^) They can also be used as a counters or used for storing offset address for some particular addressing modes. (^) AX is used as 16-bit accumulator whereas AL is used as 8-bit accumulator. (^) BX is used as offset storage for generating physical addresses in case of certain addressing modes. (^) CX is used as a default counter in case of string and loop instructions.
(^) The physical address of the 8086 is 20-bit wide to access 1 Mbyte memory locations. However, its registers and memory locations which contain logical addresses are just 16-bits wide. (^) 8086 uses memory segmentation. It treats the 1 Mbyte of· memory as divided into segments, with a maximum size of a segment as 64 Kbytes.
as shown in fig 2.5 and 16-bit segment registers are used for the selection.
register, the data segment (DS) register, the stack segment (SS) register, and the extra segment (ES) register.
Register Organization
be accessed as a low or high byte.
bit address (physical address) on the address bus.
with each segment register.
respectively.
offset storage in some addressing modes.
14 Register Organization (^) Flag Register
16 Register Organization (^) Flag Register
1.TF: Trap flag is used for single stepping through a program (for debugging). If TF is set a trap is executed after execution of each instruction, i.e. interrupt service routine is executed which displays various registers and memory variable contents. 2.IF: Interrupt flag is used to allow/ prohibit the interruption of a program. If set, a certain type of interrupt (a maskable interrupt) can be recognized by the 8086; otherwise these interrupts are ignored. 3.DF: direction flag is used with string instruction. If DF = 0, the string is processed from its beginning with the first element having the lowest address. Otherwise, the string is processed from the high address towards the low address.
Intel 8086 has a common address and data bus which are time multiplexed. The two bus is commonly known as multiplexed address and data bus. It provides the most efficient use of pins on the processor.
(^) Memory Segmentation (^) Note that for memory segmentation:
(^) Memory Segmentation
(^) The Intel 8086 generates 20-bit physical address using the contents of segment register and the offset register associated with it. (^) offset registers include: (^) Stack pointer: contains the 16-bit offset from the segment to the top of stack. E.g. if SS =4000H and SP=9F20H, then physical address= SS*10H+SP=40000H+9F20H=49F20H. (^) Base pointer: can be used instead of SP in different addressing mode. (^) Source Index: is used to hold the offset of a data word in the data segment. (^) Destination Index: string instructions always use ES and DI to determine 20-bit physical address for the destination.