Presentation on theme: "Subject Code : 3330705 Name Of Subject : Microprocessor and assembly language programming Name of Unit : Introduction to advance Microprossor Topic : intel."— Presentation transcript:
Subject Code : Name Of Subject : Microprocessor and assembly language programming Name of Unit : Introduction to advance Microprossor Topic : intel 8086 microprossor Name of Faculty : H.M.Avaiya & N.D.Dhameliya Name of Students: (i) VINEET CHOTRANI(152) (ii) PANKHANIA YASH H(154)
INTEL 8086 MICROPROCESSOR
Block diagram of intel 8086
The 8086 hardware is internally divided into two functional parts as shown in figure.They are: 1.Bus interface unit (BIU) 2.Execution unit (EU)
Bus interface unit The BIU is responsible for interfacing 8086 with the external devices. It sends addresses on address bus, fetches instructions from memory, performs read and write operations with memory and I/O devices. BIU also computes addresses before it sends address on the address bus.
Prefetch queue It is a 6 bytes first in first out (FIFO) queue which can store upto 6 instruction bytes. BIU fetches the instruction and places them in the queue. The EU continuously executes them until the queue is empty. This allows fetch and execute cycles to overlap and speedup execution.
Segment registers The BIU has four segment registers: CS(code segment) register, DS(Data Segment) register, SS(Stack Segment) register and ES (Extra Segment) register. These segment registers hold 16 bit base address of respective segments. 8086 divides 20 bit physical address into two parts called segment base and offset and is refered as seg:offset.
Instruction pointer It is a16 bit register and stores offset address of next instruction to be executed. It is always used as offset with CS register. It is similar to program counter of The IP is incremented every time by length of instruction to point to next instruction in code segment.
Execution unit The EU executes instructions while the BIU is fetching instructions. The major components of EU are : 1.Control circuit 2.Instruction decoder 3.ALU 4.General purpose registers 5.Stack pointer 6.Index registers 7.Flag register
Control circuit It controls all the operations performed by the microprocessor. It also directs internal operations. Instruction decoder It decodes the instructions and divides them into small steps for execution.
ALU The 8086 has 16 bit arithmetic and logic unit which can perform 16 bit arithmetic and logic operations like addition, subtraction, multiplication, division, increment, decrement, AND,OR,NOT,XOR,complement,compare,shift and rotate on 16 bit operands stored in registers or memory. General purpose registers The 8086 has four 16 bit general purpose registers namely ax,bx,cx,dx The ax register is known as accumulater. The bx register is called base register. The cx register is called count register. The dx register is called data register.
Stack pointer It is a 16 bit registers used to store offset address of the top of stack. The 8086 has another stack pointer known as BP(base pointer).It is also used with stack segment and very useful in parameter passing and accessing during subroutine execution. Index register Two 16 bit index registers are SI(source index) and DI(destination index) They are inherently used in string instructions to point to source and destination strings.
Flag register It is a 16 bit register and contains nine flags. The flags are divided into two groups: 1.six conditional flags. 2.Three control flags.