SlideShare a Scribd company logo
1
KARPAGAM INSTITUTE OF TECHNOLOGY,
COIMBATORE - 105
Department of ECE
Course code with Name: EC8691/ Microprocessors and Microcontrollers
Staff Name/ Designation: Veera Boopathy.E / Assistant Professor, ECE
Department: CSE
Year/Semester: III/05
UNIT I THE 8086 MICROPROCESSOR
Introduction to 8086 – Microprocessor architecture – Addressing modes - Instruction set and assembler directives –
Assembly language programming – Modular Programming - Linking and Relocation - Stacks - Procedures – Macros –
Interrupts and interrupt service routines – Byte and String Manipulation.
UNIT II 8086 SYSTEM BUS STRUCTURE
8086 signals – Basic configurations – System bus timing –System design using 8086 – I/O programming – Introduction
to Multiprogramming – System Bus Structure – Multiprocessor configurations – Coprocessor, Closely coupled and
loosely Coupled configurations – Introduction to advanced processors.
UNIT III I/O INTERFACING
Memory Interfacing and I/O interfacing - Parallel communication interface – Serial communication interface – D/A and
A/D Interface - Timer – Keyboard /display controller – Interrupt controller –DMA controller – Programming and
applications Case studies: Traffic Light control, LED display , LCD display, Keyboard display interface and Alarm
Controller.
UNIT IV MICROCONTROLLER
Architecture of 8051 – Special Function Registers(SFRs) - I/O Pins Ports and Circuits - Instruction set - Addressing
modes - Assembly language programming.
UNIT V INTERFACING MICROCONTROLLER
Programming 8051 Timers - Serial Port Programming - Interrupts Programming – LCD & Keyboard Interfacing - ADC,
DAC & Sensor Interfacing - External Memory Interface- Stepper Motor and Waveform generation - Comparison of
Microprocessor, Microcontroller, PIC and ARM processors
2
Introduction to 8086 – Microprocessor
architecture – Addressing modes - Instruction
set and assembler directives – Assembly
language programming – Modular
Programming - Linking and Relocation - Stacks
- Procedures – Macros – Interrupts and
interrupt service routines – Byte and String
Manipulation.
8086 microprocessor
 Microprocessor is a multipurpose,
programmable, clock-driven, register based
electronic device that reads binary
information from storage device called
memory, accepts instructions and provides
result as output.
 It computes data operations within
microseconds.
 Intel Corporation launched first μP
 In 1971 – 4004 – 4 bit μP
 In 1971 – 8008 – 8 bit μP
 Intel launched advanced μP to overcome pervious version
disadvantages.
 8080 (8 bit)
 8085 (8 bit)
 8086 (16 bit)
 80186 (16 bit)
 80286 (16 bit)
 80386 (32 bit)
 80486 (16 bit)
 80586P5 (32 bit)
 Dual Core (64 bit)
 Core 2 Duo (64 bit)
 Core i3 (64 bit)
 Core i5 (64 bit)
 Core i7 (64 bit)
Lag in design and
performance
 A microprocessor is identified by
› Data lines
› Address lines
 Data Line
› Amount of data bits carried
› Type of microprocessor
 Address Line
› Amount of memory space present (2k)
 Example:
 8086 has 16 bit data lines – 16 bit μP
 8086 has 20 bit address lines – 220=1048576 (1 MB)
i. 8086 – 16 bit μP
ii. 8086 – 16 bit data bus
iii. 8086 – 20 bit address bus {220=1048576 (1 MB)}
iv. 8086 generate 16 bit I/O address. Hence access 216=65536
I/O ports at a time.
v. 8086 has fourteen 16-bit registers.
vi. Address and data buses are multiplexed. Thus reduces
pins but slow data transfer.
vii. 8086 requires one phase clock with 33% duty cycle.
viii. 8086 perform bit, byte, word and block operations.
ix. 8086 operates in two different modes:
› Minimum mode
› Maximum mode
x. 8086 supports multiprogramming.
xi. 8086 fetch upto 6 instructions from memory at a same
time and execute using pipeling.
xii. 8086 provides powerful instructions
8086 microprocessor
AH AL
BH BL
CH CL
DH DL
STACK POINTER (SP)
BASE POINTER (BP)
SOURCE INDEX (SI)
DESTINATION INDEX (DI)
EXTRA SEGMENT (ES)
CODE SEGMENT (CS)
STACK SEGMENT (SS)
DATA SEGMENT (DS)
INSTRUCTION POINTER (IP)
6 5 4 3 2 1
CONTROL
SYSTEM
ARITHMETIC
LOGIC UNIT
FLAGS
Instruction Queue
OPERANDS
∑
Memory
Interface
EU
BIU
Instruction
Decoder
11
 8086 is internally divided into two
units.
› Bus Interface Unit (BIU)
› Execution Unit (EU)
 BIU and EU works simultaneously.
 Hence instruction processing time
reduced
Sends out addresses for memory locations
Fetches Instructions from memory
Reads/Writes data to memory
Sends out addresses for I/O ports
Reads/Writes data to Input/Output ports
13
Main Components are
Instruction Queue
Segment Registers
Instruction Pointer
14
 8086 employs parallel processing
 When EU is busy decoding or executing current instruction, the buses of
8086 may not be in use.
 At that time, BIU can use buses to fetch upto six instruction bytes for the
following instructions
 BIU stores these pre-fetched bytes in a FIFO register called Instruction
Queue
 When EU is ready for its next instruction, it simply reads the instruction from
the queue in BIU
15
EU of 8086 does not have to wait in between for BIU to
fetch next instruction byte from memory
So the presence of a queue in 8086 speeds up the
processing
Fetching the next instruction while the current instruction
executes is called pipelining 16
Tells BIU (addresses) where to fetch
instructions or data
Decodes & Executes instructions
Dividing the work between BIU & EU speeds
up processing
17
Main components are
› Instruction Decoder
› Control System
› Arithmetic Logic Unit
› General Purpose Registers
› Flag Register
› Pointer & Index registers
18
 Translates instructions fetched from memory into a
series of actions which EU carries out
19
Control System
 Generates timing and control signals to perform the
internal operations of the microprocessor
Arithmetic Logic Unit
 EU has a 16-bit ALU which can ADD, SUBTRACT, AND,
OR, increment, decrement, complement or shift binary
numbers
 EU has 8 general purpose
registers
 Can be individually used for
storing 8-bit data
 AL register is also called
Accumulator
 Two registers can also be
combined to form 16-bit
registers
 The valid register pairs are –
AX, BX, CX, DX 20
AH AL
BH BL
CH CL
DH DL
AH AL AX
BH BL BX
CH CL CX
DH DL DX
8086 has a 16-bit flag register
Contains 9 active flags
There are two types of flags in 8086
Conditional flags – six flags, set or reset by EU
on the basis of results of some arithmetic
operations
Control flags – three flags, used to control certain
operations of the processor
21
U U U U OF DF IF TF SF ZF U AF U PF U CF
22
1. CF CARRY FLAG
Conditional Flags
(Compatible with 8085,
except OF)
2. PF PARITY FLAG
3. AF AUXILIARY CARRY
4. ZF ZERO FLAG
5. SF SIGN FLAG
6. OF OVERFLOW FLAG
7. TF TRAP FLAG
Control Flags
8. IF INTERRUPT FLAG
9. DF DIRECTION FLAG
23
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
Carry Flag
This flag is set, when there is
a carry out of MSB in case of
addition or a borrow in case
of subtraction.
Parity Flag
This flag is set to 1, if the lower
byte of the result contains even
number of 1’s ; for odd number
of 1’s set to zero.
Auxiliary Carry Flag
This is set, if there is a carry from the
lowest nibble, i.e, bit three during
addition, or borrow for the lowest
nibble, i.e, bit three, during
subtraction.
Zero Flag
This flag is set, if the result of
the computation or comparison
performed by an instruction is
zero
Sign Flag
This flag is set, when the
result of any computation
is negative
Tarp Flag
If this flag is set, the processor
enters the single step execution
mode by generating internal
interrupts after the execution of
each instruction
Interrupt Flag
Causes the 8086 to recognize
external mask interrupts; clearing IF
disables these interrupts.
Direction Flag
This is used by string manipulation instructions. If this flag bit
is ‘0’, the string is processed beginning from the lowest
address to the highest address, i.e., auto incrementing mode.
Otherwise, the string is processed from the highest address
towards the lowest address, i.e., auto incrementing mode.
Over flow Flag
This flag is set, if an overflow occurs, i.e, if the result of a signed
operation is large enough to accommodate in a destination
register. The result is of more than 7-bits in size in case of 8-bit
signed operation and more than 15-bits in size in case of 16-bit
sign operations, then the overflow will be set.
24
Registers, Flag
Sl.No. Type Register width Name of register
1 General purpose
register
16 bit AX, BX, CX, DX
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
8086 registers
categorized
into 4 groups
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
25
Register Name of the Register Special Function
AX 16-bit Accumulator Stores the 16-bit results of arithmetic and logic operations
AL 8-bit Accumulator Stores the 8-bit results of arithmetic and logic operations
BX Base register Used to hold base value in base addressing mode to access
memory data
CX Count Register Used to hold the count value in SHIFT, ROTATE and LOOP
instructions
DX Data Register Used to hold data for multiplication and division operations
SP Stack Pointer Used to hold the offset address of top stack memory
BP Base Pointer Used to hold the base value in base addressing using SS
register to access data from stack memory
SI Source Index Used to hold index value of source operand (data) for string
instructions
DI Data Index Used to hold the index value of destination operand (data)
for string operations
Registers and Special
Functions

More Related Content

PPTX
4.programmable dma controller 8257
PPT
Architecture of 8086 Microprocessor
PPT
Interfacing 8255
PDF
8259 Programmable Interrupt Controller
PDF
Unit 3 mpmc
PPTX
Microcontoller and Embedded System
PPTX
8255 PPI
PDF
Unit 5
4.programmable dma controller 8257
Architecture of 8086 Microprocessor
Interfacing 8255
8259 Programmable Interrupt Controller
Unit 3 mpmc
Microcontoller and Embedded System
8255 PPI
Unit 5

What's hot (20)

PPT
8255 presentaion.ppt
PPTX
8259 Programmable Interrupt Controller by vijay
PPTX
Interrupts of microprocessor 8085
PPTX
Watch-dog Timer in LPC1768
PPTX
Data flow model -Lecture-4
PPTX
RTC Interfacing and Programming
PPTX
ARM Processors
PPTX
3.programmable interrupt controller 8259
PPTX
8259 Operating Modes.pptx
PPTX
Pentium processor
PPTX
Presentation on 8086 Microprocessor
PDF
Assembler directives and basic steps ALP of 8086
PPTX
Interrupts on 8086 microprocessor by vijay kumar.k
PPTX
8257 DMA Controller
PPT
Microcontroller-8051.ppt
PPTX
8237 dma controller
DOCX
Arm7 Interfacing examples
PPTX
INTEL 8086 MICROPROCESSOR
PPT
Interfacing LCD with 8051 Microcontroller
PPTX
Interfacing Stepper motor with 8051
8255 presentaion.ppt
8259 Programmable Interrupt Controller by vijay
Interrupts of microprocessor 8085
Watch-dog Timer in LPC1768
Data flow model -Lecture-4
RTC Interfacing and Programming
ARM Processors
3.programmable interrupt controller 8259
8259 Operating Modes.pptx
Pentium processor
Presentation on 8086 Microprocessor
Assembler directives and basic steps ALP of 8086
Interrupts on 8086 microprocessor by vijay kumar.k
8257 DMA Controller
Microcontroller-8051.ppt
8237 dma controller
Arm7 Interfacing examples
INTEL 8086 MICROPROCESSOR
Interfacing LCD with 8051 Microcontroller
Interfacing Stepper motor with 8051
Ad

Similar to 8086 microprocessor (20)

PDF
unit-2-co-all-ppt_2-umbers – Integer/floating point
PPTX
CH-02 8086-microprocessor-architecture.pptx
DOCX
Intel Microprocessors 8086 Documentation
PPTX
Presentation on 8086 microprocessor
PPTX
8086 microprocessor-architecture-120207111857-phpapp01
PPTX
8086 microprocessor-architecture-120207111857-phpapp01
PDF
microprocessor_part_3_compressed_1588259301.pdf
PDF
Module 1 8086
PPT
8086_architecture MMC PPT.ppt
PPTX
8086 microprocessor-architecture-120207111857-phpapp01
PDF
8086 Architecture, Pin diagram, Addressing modes (3).pdf
PPT
8086-microprocessor-architecture.ppt
PPT
architecture memory interfacing
PPT
SUSTAINABLE ENGINEERING FUNDAMENTALS NEW FOR BTECH KTU STUDENTS
PDF
Architecture of 8086 pdf for engineering studnets
PDF
Microprocessor 8086
PPTX
MPMC Microprocessor
PPTX
Architecture of 8086 microprocessor
unit-2-co-all-ppt_2-umbers – Integer/floating point
CH-02 8086-microprocessor-architecture.pptx
Intel Microprocessors 8086 Documentation
Presentation on 8086 microprocessor
8086 microprocessor-architecture-120207111857-phpapp01
8086 microprocessor-architecture-120207111857-phpapp01
microprocessor_part_3_compressed_1588259301.pdf
Module 1 8086
8086_architecture MMC PPT.ppt
8086 microprocessor-architecture-120207111857-phpapp01
8086 Architecture, Pin diagram, Addressing modes (3).pdf
8086-microprocessor-architecture.ppt
architecture memory interfacing
SUSTAINABLE ENGINEERING FUNDAMENTALS NEW FOR BTECH KTU STUDENTS
Architecture of 8086 pdf for engineering studnets
Microprocessor 8086
MPMC Microprocessor
Architecture of 8086 microprocessor
Ad

Recently uploaded (20)

PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PDF
Structs to JSON How Go Powers REST APIs.pdf
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PDF
Digital Logic Computer Design lecture notes
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
OOP with Java - Java Introduction (Basics)
PDF
Arduino robotics embedded978-1-4302-3184-4.pdf
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PPTX
web development for engineering and engineering
PPTX
Geodesy 1.pptx...............................................
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
CH1 Production IntroductoryConcepts.pptx
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PPTX
UNIT 4 Total Quality Management .pptx
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
Lecture Notes Electrical Wiring System Components
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
Structs to JSON How Go Powers REST APIs.pdf
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
Digital Logic Computer Design lecture notes
Model Code of Practice - Construction Work - 21102022 .pdf
OOP with Java - Java Introduction (Basics)
Arduino robotics embedded978-1-4302-3184-4.pdf
UNIT-1 - COAL BASED THERMAL POWER PLANTS
web development for engineering and engineering
Geodesy 1.pptx...............................................
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
CH1 Production IntroductoryConcepts.pptx
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
UNIT 4 Total Quality Management .pptx
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Embodied AI: Ushering in the Next Era of Intelligent Systems
Lecture Notes Electrical Wiring System Components

8086 microprocessor

  • 1. 1 KARPAGAM INSTITUTE OF TECHNOLOGY, COIMBATORE - 105 Department of ECE Course code with Name: EC8691/ Microprocessors and Microcontrollers Staff Name/ Designation: Veera Boopathy.E / Assistant Professor, ECE Department: CSE Year/Semester: III/05
  • 2. UNIT I THE 8086 MICROPROCESSOR Introduction to 8086 – Microprocessor architecture – Addressing modes - Instruction set and assembler directives – Assembly language programming – Modular Programming - Linking and Relocation - Stacks - Procedures – Macros – Interrupts and interrupt service routines – Byte and String Manipulation. UNIT II 8086 SYSTEM BUS STRUCTURE 8086 signals – Basic configurations – System bus timing –System design using 8086 – I/O programming – Introduction to Multiprogramming – System Bus Structure – Multiprocessor configurations – Coprocessor, Closely coupled and loosely Coupled configurations – Introduction to advanced processors. UNIT III I/O INTERFACING Memory Interfacing and I/O interfacing - Parallel communication interface – Serial communication interface – D/A and A/D Interface - Timer – Keyboard /display controller – Interrupt controller –DMA controller – Programming and applications Case studies: Traffic Light control, LED display , LCD display, Keyboard display interface and Alarm Controller. UNIT IV MICROCONTROLLER Architecture of 8051 – Special Function Registers(SFRs) - I/O Pins Ports and Circuits - Instruction set - Addressing modes - Assembly language programming. UNIT V INTERFACING MICROCONTROLLER Programming 8051 Timers - Serial Port Programming - Interrupts Programming – LCD & Keyboard Interfacing - ADC, DAC & Sensor Interfacing - External Memory Interface- Stepper Motor and Waveform generation - Comparison of Microprocessor, Microcontroller, PIC and ARM processors 2
  • 3. Introduction to 8086 – Microprocessor architecture – Addressing modes - Instruction set and assembler directives – Assembly language programming – Modular Programming - Linking and Relocation - Stacks - Procedures – Macros – Interrupts and interrupt service routines – Byte and String Manipulation.
  • 5.  Microprocessor is a multipurpose, programmable, clock-driven, register based electronic device that reads binary information from storage device called memory, accepts instructions and provides result as output.  It computes data operations within microseconds.
  • 6.  Intel Corporation launched first μP  In 1971 – 4004 – 4 bit μP  In 1971 – 8008 – 8 bit μP  Intel launched advanced μP to overcome pervious version disadvantages.  8080 (8 bit)  8085 (8 bit)  8086 (16 bit)  80186 (16 bit)  80286 (16 bit)  80386 (32 bit)  80486 (16 bit)  80586P5 (32 bit)  Dual Core (64 bit)  Core 2 Duo (64 bit)  Core i3 (64 bit)  Core i5 (64 bit)  Core i7 (64 bit) Lag in design and performance
  • 7.  A microprocessor is identified by › Data lines › Address lines  Data Line › Amount of data bits carried › Type of microprocessor  Address Line › Amount of memory space present (2k)  Example:  8086 has 16 bit data lines – 16 bit μP  8086 has 20 bit address lines – 220=1048576 (1 MB)
  • 8. i. 8086 – 16 bit μP ii. 8086 – 16 bit data bus iii. 8086 – 20 bit address bus {220=1048576 (1 MB)} iv. 8086 generate 16 bit I/O address. Hence access 216=65536 I/O ports at a time. v. 8086 has fourteen 16-bit registers. vi. Address and data buses are multiplexed. Thus reduces pins but slow data transfer. vii. 8086 requires one phase clock with 33% duty cycle.
  • 9. viii. 8086 perform bit, byte, word and block operations. ix. 8086 operates in two different modes: › Minimum mode › Maximum mode x. 8086 supports multiprogramming. xi. 8086 fetch upto 6 instructions from memory at a same time and execute using pipeling. xii. 8086 provides powerful instructions
  • 11. AH AL BH BL CH CL DH DL STACK POINTER (SP) BASE POINTER (BP) SOURCE INDEX (SI) DESTINATION INDEX (DI) EXTRA SEGMENT (ES) CODE SEGMENT (CS) STACK SEGMENT (SS) DATA SEGMENT (DS) INSTRUCTION POINTER (IP) 6 5 4 3 2 1 CONTROL SYSTEM ARITHMETIC LOGIC UNIT FLAGS Instruction Queue OPERANDS ∑ Memory Interface EU BIU Instruction Decoder 11
  • 12.  8086 is internally divided into two units. › Bus Interface Unit (BIU) › Execution Unit (EU)  BIU and EU works simultaneously.  Hence instruction processing time reduced
  • 13. Sends out addresses for memory locations Fetches Instructions from memory Reads/Writes data to memory Sends out addresses for I/O ports Reads/Writes data to Input/Output ports 13
  • 14. Main Components are Instruction Queue Segment Registers Instruction Pointer 14
  • 15.  8086 employs parallel processing  When EU is busy decoding or executing current instruction, the buses of 8086 may not be in use.  At that time, BIU can use buses to fetch upto six instruction bytes for the following instructions  BIU stores these pre-fetched bytes in a FIFO register called Instruction Queue  When EU is ready for its next instruction, it simply reads the instruction from the queue in BIU 15
  • 16. EU of 8086 does not have to wait in between for BIU to fetch next instruction byte from memory So the presence of a queue in 8086 speeds up the processing Fetching the next instruction while the current instruction executes is called pipelining 16
  • 17. Tells BIU (addresses) where to fetch instructions or data Decodes & Executes instructions Dividing the work between BIU & EU speeds up processing 17
  • 18. Main components are › Instruction Decoder › Control System › Arithmetic Logic Unit › General Purpose Registers › Flag Register › Pointer & Index registers 18
  • 19.  Translates instructions fetched from memory into a series of actions which EU carries out 19 Control System  Generates timing and control signals to perform the internal operations of the microprocessor Arithmetic Logic Unit  EU has a 16-bit ALU which can ADD, SUBTRACT, AND, OR, increment, decrement, complement or shift binary numbers
  • 20.  EU has 8 general purpose registers  Can be individually used for storing 8-bit data  AL register is also called Accumulator  Two registers can also be combined to form 16-bit registers  The valid register pairs are – AX, BX, CX, DX 20 AH AL BH BL CH CL DH DL AH AL AX BH BL BX CH CL CX DH DL DX
  • 21. 8086 has a 16-bit flag register Contains 9 active flags There are two types of flags in 8086 Conditional flags – six flags, set or reset by EU on the basis of results of some arithmetic operations Control flags – three flags, used to control certain operations of the processor 21
  • 22. U U U U OF DF IF TF SF ZF U AF U PF U CF 22 1. CF CARRY FLAG Conditional Flags (Compatible with 8085, except OF) 2. PF PARITY FLAG 3. AF AUXILIARY CARRY 4. ZF ZERO FLAG 5. SF SIGN FLAG 6. OF OVERFLOW FLAG 7. TF TRAP FLAG Control Flags 8. IF INTERRUPT FLAG 9. DF DIRECTION FLAG
  • 23. 23 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 Carry Flag This flag is set, when there is a carry out of MSB in case of addition or a borrow in case of subtraction. Parity Flag This flag is set to 1, if the lower byte of the result contains even number of 1’s ; for odd number of 1’s set to zero. Auxiliary Carry Flag This is set, if there is a carry from the lowest nibble, i.e, bit three during addition, or borrow for the lowest nibble, i.e, bit three, during subtraction. Zero Flag This flag is set, if the result of the computation or comparison performed by an instruction is zero Sign Flag This flag is set, when the result of any computation is negative Tarp Flag If this flag is set, the processor enters the single step execution mode by generating internal interrupts after the execution of each instruction Interrupt Flag Causes the 8086 to recognize external mask interrupts; clearing IF disables these interrupts. Direction Flag This is used by string manipulation instructions. If this flag bit is ‘0’, the string is processed beginning from the lowest address to the highest address, i.e., auto incrementing mode. Otherwise, the string is processed from the highest address towards the lowest address, i.e., auto incrementing mode. Over flow Flag This flag is set, if an overflow occurs, i.e, if the result of a signed operation is large enough to accommodate in a destination register. The result is of more than 7-bits in size in case of 8-bit signed operation and more than 15-bits in size in case of 16-bit sign operations, then the overflow will be set.
  • 24. 24 Registers, Flag Sl.No. Type Register width Name of register 1 General purpose register 16 bit AX, BX, CX, DX 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 8086 registers categorized into 4 groups 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
  • 25. 25 Register Name of the Register Special Function AX 16-bit Accumulator Stores the 16-bit results of arithmetic and logic operations AL 8-bit Accumulator Stores the 8-bit results of arithmetic and logic operations BX Base register Used to hold base value in base addressing mode to access memory data CX Count Register Used to hold the count value in SHIFT, ROTATE and LOOP instructions DX Data Register Used to hold data for multiplication and division operations SP Stack Pointer Used to hold the offset address of top stack memory BP Base Pointer Used to hold the base value in base addressing using SS register to access data from stack memory SI Source Index Used to hold index value of source operand (data) for string instructions DI Data Index Used to hold the index value of destination operand (data) for string operations Registers and Special Functions