Introduction to Microprocessor
A microprocessor is an integrated circuit that performs the functions of a CPU. It is programmable,
clock-driven, and processes binary data. It consists of ALU, control unit, and registers.
A microprocessor is an integrated circuit that performs the functions of a CPU. It is programmable,
clock-driven, and processes binary data. It consists of ALU, control unit, and registers.
A microprocessor is an integrated circuit that performs the functions of a CPU. It is programmable,
clock-driven, and processes binary data. It consists of ALU, control unit, and registers.
A microprocessor is an integrated circuit that performs the functions of a CPU. It is programmable,
clock-driven, and processes binary data. It consists of ALU, control unit, and registers.
8086 Architecture Overview
The 8086 microprocessor consists of two main parts: BIU (Bus Interface Unit) and EU (Execution
Unit). BIU handles memory access while EU executes instructions.
The 8086 microprocessor consists of two main parts: BIU (Bus Interface Unit) and EU (Execution
Unit). BIU handles memory access while EU executes instructions.
The 8086 microprocessor consists of two main parts: BIU (Bus Interface Unit) and EU (Execution
Unit). BIU handles memory access while EU executes instructions.
The 8086 microprocessor consists of two main parts: BIU (Bus Interface Unit) and EU (Execution
Unit). BIU handles memory access while EU executes instructions.
Registers in 8086
Registers are temporary storage locations. They are classified into general-purpose registers,
segment registers, pointer/index registers, and flag register.
Registers are temporary storage locations. They are classified into general-purpose registers,
segment registers, pointer/index registers, and flag register.
Registers are temporary storage locations. They are classified into general-purpose registers,
segment registers, pointer/index registers, and flag register.
Registers are temporary storage locations. They are classified into general-purpose registers,
segment registers, pointer/index registers, and flag register.
General Purpose Registers
AX, BX, CX, DX are used for arithmetic and data operations. They can be accessed as 8-bit or
16-bit registers.
AX, BX, CX, DX are used for arithmetic and data operations. They can be accessed as 8-bit or
16-bit registers.
AX, BX, CX, DX are used for arithmetic and data operations. They can be accessed as 8-bit or
16-bit registers.
AX, BX, CX, DX are used for arithmetic and data operations. They can be accessed as 8-bit or
16-bit registers.
Pointer and Index Registers
SP, BP, SI, DI are used for addressing memory. IP holds the address of the next instruction.
SP, BP, SI, DI are used for addressing memory. IP holds the address of the next instruction.
SP, BP, SI, DI are used for addressing memory. IP holds the address of the next instruction.
SP, BP, SI, DI are used for addressing memory. IP holds the address of the next instruction.
Flag Register
The flag register contains status and control flags like Carry, Zero, Sign, Overflow, Direction,
Interrupt, etc.
The flag register contains status and control flags like Carry, Zero, Sign, Overflow, Direction,
Interrupt, etc.
The flag register contains status and control flags like Carry, Zero, Sign, Overflow, Direction,
Interrupt, etc.
The flag register contains status and control flags like Carry, Zero, Sign, Overflow, Direction,
Interrupt, etc.
Instruction Set Basics
Instruction set defines operations like ADD, SUB, MOV. Each instruction has opcode and operands.
Instruction set defines operations like ADD, SUB, MOV. Each instruction has opcode and operands.
Instruction set defines operations like ADD, SUB, MOV. Each instruction has opcode and operands.
Instruction set defines operations like ADD, SUB, MOV. Each instruction has opcode and operands.
Instruction Cycle
The instruction cycle includes fetch, decode, execute, and store stages.
The instruction cycle includes fetch, decode, execute, and store stages.
The instruction cycle includes fetch, decode, execute, and store stages.
The instruction cycle includes fetch, decode, execute, and store stages.
Instruction Formats
Instructions are represented in binary but written in assembly for human understanding.
Instructions are represented in binary but written in assembly for human understanding.
Instructions are represented in binary but written in assembly for human understanding.
Instructions are represented in binary but written in assembly for human understanding.
Types of Instructions
Includes data transfer, arithmetic, logical, string, control, and branching instructions.
Includes data transfer, arithmetic, logical, string, control, and branching instructions.
Includes data transfer, arithmetic, logical, string, control, and branching instructions.
Includes data transfer, arithmetic, logical, string, control, and branching instructions.
Addressing Modes
Addressing modes define how operands are accessed.
Addressing modes define how operands are accessed.
Addressing modes define how operands are accessed.
Addressing modes define how operands are accessed.
Immediate Addressing Mode
Data is directly given in instruction.
Data is directly given in instruction.
Data is directly given in instruction.
Data is directly given in instruction.
Direct Addressing Mode
Memory address is directly specified.
Memory address is directly specified.
Memory address is directly specified.
Memory address is directly specified.
Register Addressing Mode
Operands are in registers.
Operands are in registers.
Operands are in registers.
Operands are in registers.
Register Indirect Addressing Mode
Register holds memory address.
Register holds memory address.
Register holds memory address.
Register holds memory address.
Indexed Addressing Mode
Uses SI or DI registers.
Uses SI or DI registers.
Uses SI or DI registers.
Uses SI or DI registers.
Stack Operation
Stack is used for temporary storage using PUSH and POP.
Stack is used for temporary storage using PUSH and POP.
Stack is used for temporary storage using PUSH and POP.
Stack is used for temporary storage using PUSH and POP.
Data Transfer Instructions
MOV, XCHG, PUSH, POP, IN, OUT are used for data movement.
MOV, XCHG, PUSH, POP, IN, OUT are used for data movement.
MOV, XCHG, PUSH, POP, IN, OUT are used for data movement.
MOV, XCHG, PUSH, POP, IN, OUT are used for data movement.
Arithmetic Instructions
ADD, SUB, MUL, DIV perform calculations.
ADD, SUB, MUL, DIV perform calculations.
ADD, SUB, MUL, DIV perform calculations.
ADD, SUB, MUL, DIV perform calculations.
Logical Instructions
AND, OR, XOR, NOT are used for bit operations.
AND, OR, XOR, NOT are used for bit operations.
AND, OR, XOR, NOT are used for bit operations.
AND, OR, XOR, NOT are used for bit operations.
String Instructions
MOVS, CMPS, SCAS, LODS, STOS handle string operations.
MOVS, CMPS, SCAS, LODS, STOS handle string operations.
MOVS, CMPS, SCAS, LODS, STOS handle string operations.
MOVS, CMPS, SCAS, LODS, STOS handle string operations.
Processor Control Instructions
STC, CLC, CLI, STI control processor operations.
STC, CLC, CLI, STI control processor operations.
STC, CLC, CLI, STI control processor operations.
STC, CLC, CLI, STI control processor operations.
Control Transfer Instructions
JMP, CALL, RET control program flow.
JMP, CALL, RET control program flow.
JMP, CALL, RET control program flow.
JMP, CALL, RET control program flow.
Conditional Branching
Instructions like JZ, JNZ depend on flags.
Instructions like JZ, JNZ depend on flags.
Instructions like JZ, JNZ depend on flags.
Instructions like JZ, JNZ depend on flags.
Loops and Programs
Loops are created using instructions like DEC and JNZ.
Loops are created using instructions like DEC and JNZ.
Loops are created using instructions like DEC and JNZ.
Loops are created using instructions like DEC and JNZ.
Example Program
Example: Sum of N numbers using loop and registers.
Example: Sum of N numbers using loop and registers.
Example: Sum of N numbers using loop and registers.
Example: Sum of N numbers using loop and registers.
Nested Procedure Calls
Stack is used to store return addresses during nested calls.
Stack is used to store return addresses during nested calls.
Stack is used to store return addresses during nested calls.
Stack is used to store return addresses during nested calls.
Advanced Concepts
Includes segmentation, pipelining, and memory interfacing.
Includes segmentation, pipelining, and memory interfacing.
Includes segmentation, pipelining, and memory interfacing.
Includes segmentation, pipelining, and memory interfacing.
Revision Notes
Key points: Registers, flags, instruction set, addressing modes.
Key points: Registers, flags, instruction set, addressing modes.
Key points: Registers, flags, instruction set, addressing modes.
Key points: Registers, flags, instruction set, addressing modes.
Conclusion
8086 microprocessor is fundamental in understanding computer architecture.
8086 microprocessor is fundamental in understanding computer architecture.
8086 microprocessor is fundamental in understanding computer architecture.
8086 microprocessor is fundamental in understanding computer architecture.