3 Architecture of 8086
3 Architecture of 8086
8086 INTERNAL
ARCHITECTURE
8086 employs parallel processing
8086 CPU has two parts which operate at the same time
Bus Interface Unit
Execution Unit
CPU functions
1. Fetch
2. Decode
3. Execute
BUS INTERFACE UNIT
(BIU)
Sends out addresses of memory or I/O ports
Fetches Instructions from memory
Reads data from memory and Input/Output ports
Writes data to memory and Input/Output ports
Control System
Generates timing and control signals to perform the internal
operations of the microprocessor
BX REGISTER
used as base register
Holds the base address of the program such as offset address
in indirect addressing mode.
CX REGISTER
Used as count register
counts the number of iterations in loops, and in strings
operations, it specifies the number of characters in a
particular string.
DX REGISTER
data register holds overflow and I/O addresses.
used in combination with AX register to store 32-bit results
of multiplication and division.
FLAG/STATUS REGISTER
8086 has a 16-bit flag register which indicates the state of the
processor.
It has 9 flags and they are divided into 2 groups − Conditional or
Status Flags and Control Flags.
Conditional or Status 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
CF-Carry Flag
CF=1, when there is a carry
out of MSB in case of addition
or a borrow in case of
subtraction.
CF=0 otherwise
PF - Parity Flag
PF=1, if result of the operation
contains even number of 1’s
PF=0 otherwise (for odd
number of 1s)
AF- Auxiliary Carry Flag:
AF=1, 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
AF=0, otherwise
Used in BCD opeartions