Beruflich Dokumente
Kultur Dokumente
It was the first 16-bit processor having 16-bit ALU, 16-bit registers, internal
data bus, and 16-bit external data bus resulting in faster processing.
o 8086 → 5MHz
o 8086-2 → 8MHz
o (c)8086-1 → 10 MHz
It uses two stages of pipelining, i.e. Fetch Stage and Execute Stage, which
improves performance.
Fetch stage can prefetch up to 6 bytes of instructions and stores them in
the queue.
The 8086 uses a memory banking system. It means entire data is not stored
sequentially in a single memory of 1 MB but memory is divided into two
banks of 512KB
8086 has a powerful innstrction set. So that it supports Multiply and Divide
operation.
EU (Execution Unit)
The execution unit (EU) tells the BIU where to fetch instructions or data
from, decodes instructions, and executes instructions.
The functional parts of the execution unit are control circuitry or system,
instruction decoder, and Arithmetic logic unit (ALU). The EU has a 16-bit
ALU, which can perform arithmetic operations such as add, subtract etc.
and logical operations such as AND, OR, XOR, increment, decrement etc.
The BIU handles all data and addresses on the buses for the execution unit
such as it sends out addresses, fetches instructions from memory, reads
data from ports and memory as well as writes data to ports and memory.
ALU
It handles all arithmetic and logical operations, like +, −, ×, /, OR, AND, NOT
operations.
Instruction Queue
In the BIU, the next register, below the segment register is instruction
pointer. The instruction pointer (IP) holds the 16-bit address of the next
code byte within this code segment.
Segment Registers
The BIU contains four 16-bit segment registers. They are: the extra segment
(ES) register, the code segment (CS) registers, the data segment (DS)
registers, and the stack segment (SS) registers. These segment registers are
used to hold the upper 16 bits of the starting address for each of the
segments. The part of a segment starting address stored in a segment
register is often called the segment base.
Flag Register
Conditional Flags
Control Flags
1. Trap Flag (TP): It is used for single step control. It allows user to execute
one instruction of a program at a time for debugging. When trap flag is set,
program can be run in single step mode.
2. Interrupt Flag (IF): It is an interrupt enable/disable flag, i.e. used to
allow/prohibit the interruption of a program. If it is set, the maskable
interrupt is enabled and if it is reset, the interrupt is disabled.
3. Direction Flag (DF): It is used in string operation. If it is set, string bytes
are accessed from higher memory address to lower memory address. When
it is reset, the string bytes are accessed from lower memory address to
higher memory address.
General Purpose Registers
The EU has eight general purpose registers labeled AH, AL, BH, BL, CH, CL,
DH, and DL. These registers can be used individually for temporary storage
of 8-bit data. The AL register is also called the accumulator. Certain pairs of
these general purpose registers can be used together to store 16-bit data.
The valid register pairs are AH and AL, BH and BL, CH and CL and DH and DL.
These register pairs is referred to the AX, BX, CX, and DX resp.
The stack pointer (SP) register contains the 16-bit offset from the start of
the segment to the memory location where a word was most recently
stored on the stack. The memory location where a word was most recently
stored is called the top of stack.
Motherboard
A motherboard is the main printed circuit board (PCB) found in general
purpose microcomputers and other expandable systems. It holds and
allows communication between many of the crucial electronic components
of a system, such as the central processing unit (CPU) and memory, and
provides connectors for other peripherals. Unlike a backplane, a
motherboard usually contains significant sub-systems such as the central
processor, the chipset's input/output and memory controllers, interface
connectors, and other components integrated for general purpose use.