2. Introduction of 8086 microprocessor~
8086 is capable of working at 16-bit information at one operation.
8086 can store the biggest possible instruction.
3. Block Diagram Of 8086
The 8086 microprocessor consists of two main blocks:
The Bus interface unit (BIU) and
The execution unit (EU).
All the components of 8086 microprocessor are present with the two blocks.
The architecture doing two things at time that’s why the architecture is divided into two unit
one unit for fetching and other unit for executing.
4.
5. 1~BUS INTERFACE UNIT (BIU)
BIU has a direct link with the memory.
BIU fetch the instruction from the memory.
BIU side by side fetch the instruction.
BIU calculate the physical address (PA)
BIU manage the object queue.
BIU Consist of :
1) Segment registers.
2) Instruction pointer.
3) Queue.
6. This is formula to calculate physical address of any instruction.
CS,SS,DS,ES are segment register .segment present at the memory ,contains
Segment of all the registers. they all are 16-bit register.
IP stands for the instruction pointer .it always give the address of
The next instruction of offset address.
These
are
segment
register
7. At the as 1st instruction get execute BIU fetch next 6-byte instruction and stores
them in to the Queue.
BIU will wait for 2-byte to empty then it will refill the Queue.
8. EXECUTION UNIT (EU)
Execution unit execute the instruction fetched by the BIU .
EU consists of :
1)ALU
2)offset register
3)GPRs
4)operand register
5) flag register
9. The instruction get decode at control unit and transfer a
signal to whole Architecture what have to do and then execution get
place.
GPRs (general purpose register ) stores the decoded value .
Eg:- Mov CL, 34H || Mov CH , 12H|| Mov CX ,1234
Hence cx =1234H ,each gpr of 8-byte
SP, BP, SI,DI are offset registers for different segment
They
are
called
offset
register
10. All the mathematical and logical operation are performed inside ALU
(arithmetic logic unit ) so if any instruction needs to perform such
operation the control unit handover to ALU.
ALU produce the result and also status of the result.result goes to GPRs
and status goes to flag.
OPERAND REGISTER is temporary register .it will not available to
programer .it is use by the processor to store temporary value.
The flag register is of 16-bit length which contains of 9 flags. Each flag
give status about the current result, flag changes after every operation.