0% found this document useful (0 votes)
5 views26 pages

MP Lec 1 Notes

The document provides an overview of the Intel 8086 microprocessor architecture, detailing its components such as the Execution Unit (EU) and Bus Interface Unit (BIU). It describes the functionality of various registers, including segment, general-purpose, and pointer registers, as well as the instruction queue and flag register. Additionally, it covers the microprocessor's capabilities, including memory addressing and instruction execution mechanisms.

Uploaded by

technogamersz786
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views26 pages

MP Lec 1 Notes

The document provides an overview of the Intel 8086 microprocessor architecture, detailing its components such as the Execution Unit (EU) and Bus Interface Unit (BIU). It describes the functionality of various registers, including segment, general-purpose, and pointer registers, as well as the instruction queue and flag register. Additionally, it covers the microprocessor's capabilities, including memory addressing and instruction execution mechanisms.

Uploaded by

technogamersz786
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

Course

Course Credits
Course Syllabus
1. The Intel Microprocessors 8086
Architecture
• 1 The Intel Microprocessors 8086 Architecture
• 1.1 8086CPU Architecture,
• 1.2 Programmer’s Model
• 1.3 Functional Pin Diagram
• 1.4 Memory Segmentation
• 1.5 Banking in 8086
• 1.6 Demultiplexing of Address/Data bus
• 1.7 Functioning of 8086 in Minimum mode and
Maximum mode
• 1.8 Timing diagrams for Read and Write operations in
minimum and maximum mode
• 1.9 Interrupt structure and its servicing
8086
Microprocessor

Overview
First 16- bit processor
released by INTEL in the year
1978

Originally HMOS, now


manufactured using HMOS
III technique

Approximately 29, 000


transistors, 40 pin DIP, 5V
supply

Does not have internal clock;


external asymmetric clock
source with 33% duty cycle

20-bit address to access


memory ⇒ can address up to
220 = 1 megabytes of
8
memory space.
8086
Microprocessor

Architecture

Execution Unit (EU) Bus Interface Unit (BIU)

EU executes instructions BIU fetches instructions,


that have already been reads data from memory
fetched by the BIU. and I/O ports, writes data
to memory and I/ O ports.
BIU and EU functions 9
separately.
8086
Bus Interface Unit
Microprocessor
(BIU)
ArchitectureDedicated Adder to
generate 20 bit
address

Four 16-bit segment


registers

Code Segment (CS)


Data Segment (DS)
Stack Segment (SS)
Extra Segment (ES)

Segment Registers >> 10


8086
Bus Interface Unit
Microprocessor
(BIU)
Architecture
Segment Code Segment Register
Registers
• 16-bit

• CS contains the base or start of the current code


segment; IP contains the distance or offset from this
address to the next instruction byte to be fetched.

• BIU computes the 20-bit physical address by logically


shifting the contents of CS 4-bits to the left and then
adding the 16-bit contents of IP.

• That is, all instructions of a program are relative to the


contents of the CS register multiplied by 16 and then
offset is added provided by the IP.

11
8086
Bus Interface Unit
Microprocessor
(BIU)
Architecture
Segment Data Segment Register
Registers
• 16-bit

• Points to the current data segment; operands for most


instructions are fetched from this segment.

• The 16-bit contents of the Source Index (SI) or


Destination Index (DI) or a 16-bit displacement are used
as offset for computing the 20-bit physical address.

12
8086
Bus Interface Unit
Microprocessor
(BIU)
Architecture
Segment Stack Segment Register
Registers
• 16-bit

• Points to the current stack.

• The 20-bit physical stack address is calculated from the


Stack Segment (SS) and the Stack Pointer (SP) for stack
instructions such as PUSH and POP.

• In based addressing mode, the 20-bit physical stack


address is calculated from the Stack segment (SS) and the
Base Pointer (BP).

13
8086
Bus Interface Unit
Microprocessor
(BIU)
Architecture
Segment Extra Segment Register
Registers
• 16-bit

• Points to the extra segment in which data (in excess of


64K pointed to by the DS) is stored.

• String instructions use the ES and DI to determine the


20-bit physical address for the destination.

14
8086
Bus Interface Unit
Microprocessor
(BIU)
Architecture
Segment Instruction Pointer
Registers
• 16-bit

• Always points to the next instruction to be


executed within the currently executing
code segment.

• So, this register contains the 16-bit offset


address pointing to the next instruction
code within the 64Kb of the code segment
area.

• Its content is automatically incremented


as the execution of the next instruction
takes place.

15
8086
Bus Interface Unit
Microprocessor
(BIU)
Architecture
Instruction queue

• A group of
First-In-First-Out (FIFO)
in which up to 6 bytes
of instruction code are
pre fetched from the
memory ahead of time.

• This is done in order to


speed up the execution
by overlapping
instruction fetch with
execution.

• This mechanism is
known as pipelining.

16
8086
Execution Unit (EU)
Microprocessor

EU decodes and Architecture


executes
instructions.

A decoder in the
EU control
system translates
16-bit ALU for
instructions.
performing
arithmetic and
logic operation
Four general
purpose
registers(AX, BX,
CX, DX);

Pointer registers
(Stack Pointer,
Base Pointer);

and Some of the 16 bit registers


can be used as two 8 bit
Index registers registers as :
(Source Index,
Destination Index) AX can be used as AH and AL
each of 16-bits BX can be used as BH and BL 17
CX can be used as CH and CL
8086
Execution Unit (EU)
Microprocessor

Architecture
EU Accumulator Register (AX)
Registers
• Consists of two 8-bit registers AL and AH,
which can be combined together and used
as a 16-bit register AX.

• AL in this case contains the low order byte


of the word, and AH contains the
high-order byte.

• The I/O instructions use the AX or AL for


inputting / outputting 16 or 8 bit data to
or from an I/O port.

• Multiplication and Division instructions


also use the AX or AL.

18
8086
Execution Unit (EU)
Microprocessor

Architecture
EU Base Register (BX)
Registers
• Consists of two 8-bit registers BL and BH,
which can be combined together and used
as a 16-bit register BX.

• BL in this case contains the low-order byte


of the word, and BH contains the
high-order byte.

• This is the only general purpose register


whose contents can be used for addressing
the 8086 memory.

• All memory references utilizing this


register content for addressing use DS as
the default segment register.

19
8086
Execution Unit (EU)
Microprocessor

Architecture
EU Counter Register (CX)
Registers
• Consists of two 8-bit registers CL and CH,
which can be combined together and used
as a 16-bit register CX.

• When combined, CL register contains the


low order byte of the word, and CH
contains the high-order byte.

• Instructions such as SHIFT, ROTATE and


LOOP use the contents of CX as a counter.

Example:

The instruction LOOP START


automatically decrements CX by 1
without affecting flags and will check if
[CX] = 0.

If it is zero, 8086 executes the next


instruction; otherwise the 8086 branches
to the label START.
20
8086
Execution Unit (EU)
Microprocessor

Architecture
EU
Registers

21
8086
Execution Unit (EU)
Microprocessor

Architecture
EU Stack Pointer (SP) and Base
Registers Pointer (BP)

• SP and BP are used to access data in the


stack segment.

• SP is used as an offset from the current SS


during execution of instructions that
involve the stack segment in the external
memory.

• SP contents are automatically updated


(incremented/ decremented) due to
execution of a POP or PUSH instruction.

• BP contains an offset address in the


current SS, which is used by instructions
utilizing the based addressing mode.

22
8086
Execution Unit (EU)
Microprocessor

Architecture
EU Source Index (SI) and Destination
Registers Index (DI)

• Used in indexed addressing.

• Instructions that process data strings use


the SI and DI registers together with DS
and ES respectively in order to distinguish
between the source and destination
addresses.

23
8086
Execution Unit (EU)
Microprocessor

Architecture
EU Source Index (SI) and Destination
Registers Index (DI)

• Used in indexed addressing.

• Instructions that process data strings use


the SI and DI registers together with DS
and ES respectively in order to distinguish
between the source and destination
addresses.

24
8086
Execution Unit (EU)
Microprocessor

Architecture
Auxiliary Carry Flag
Carry Flag
This is set, if there is a carry
Flag Register from the lowest nibble, i.e, This flag is set, when
bit three during addition, or there is a carry out of
borrow for the lowest nibble, MSB in case of
i.e, bit three, during addition or a borrow
subtraction.
Zero Flag in case
Parity of subtraction.
Flag
Sign Flag
This flag is set, if the This flag is set to 1, if
This flag is set, result of the the lower byte of the
when the result of computation or result contains even
any computation is comparison performed number of 1’s ; for odd
negative by an instruction is number of 1’s set to
zero zero.

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

OF DF IF TF SF ZF AF PF CF
Tarp Flag
Over flow Flag If this flag is set, the
This flag is set, if an overflow occurs, i.e, if the processor enters the
result of a signed operation is large enough to single step execution
accommodate in a destination register. The
mode by generating
result is of more than 7-bits in size in case of
8-bit signed operation and more than 15-bits in internal interrupts after
size in case of 16-bit sign Direction
operations, Flag
then the the execution of each
overflow
This is will
usedbe set.
by string manipulation instruction
Interrupt Flag
instructions. If this flag bit is ‘0’, the string is
processed beginning from the lowest address Causes the 8086 to
to the highest address, i.e., auto recognize external mask
incrementing mode. Otherwise, the string is interrupts; clearing IF
processed from the highest address towards disables these interrupts. 25
the lowest address, i.e., auto incrementing
8086
Microprocessor Architecture

8086
registers 1
5
1
4
1
3
1
2
11 10 9 8 7 6 5 4 3 2 1 0

categorize
O D IF TF S Z AF P C
d into 4 F F F F F F

groups

Sl.No Type Register Name of register


. width
1 General purpose 16 bit AX, BX, CX, DX
register
8 bit AL, AH, BL, BH, CL, CH,
DL, DH
2 Pointer register 16 bit SP, BP

3 Index register 16 bit SI, DI

4 Instruction Pointer 16 bit IP

5 Segment register 16 bit CS, DS, SS, ES

6 Flag (PSW) 16 bit Flag register 26

You might also like