Professional Documents
Culture Documents
8086/8088 Architecture and Hardware Specifications
8086/8088 Architecture and Hardware Specifications
8086/8088 Architecture and Hardware Specifications
Lecture 01 1
Microprocessor Applications
Industrial Control
Home appliances
Vehicles
Security Systems
Defense Systems
Health Systems
Lecture 01 2
Processing Data & Executing Code
Microprocessor has to monitor an input signal X
If X is greater than a user defined variable, then output
control signal is ON, otherwise OFF
(X > var1) = Z
How does microprocessor compare input signals and
set the output to ON/OFF?
Write a program which the microprocessor executes to
solve the equation
Lecture 01 3
Processing Data & Executing Code
Where should the program be written and stored?
Memory
RAM or ROM ?
Microprocessor reads program instruction from ROM
Program is stored in Hard disk for latter use
Lecture 01 4
Microprocessor Interfacing
Input data/
signals
Program
Memory
Real World
Microprocessor
System Display
Keypad
Output data/
signals
Lecture 01 5
Processing Data & Executing Code
Which language should be used to write the program?
Use C++ to write the program
C++ is not understood by 8088
C++ complied to generate machine code
Machine code?
unique sequence of 1 & 0s
Different compilers available to generate target code for
different processors
Lecture 01 6
Compare Program Assembly
Code
(X > var1) = Z
var1 is a variable stored in memory location 0FA1
IN A, 1A H
Get data value from input port 1AH and store it in
microprocessor register A
CMP A, 0FA1 H
Compare the contents of register A with contents of memory
location 0FA1 H (var1)
JG set Z
If contents of register A greater, then set Z = 1
Lecture 01 7
Instruction
Operation to be performed (Opcode)
Number of bits in opcode field specify the different
number of operations
Values on which operation to be performed
(Operands)
Number of bits in operand field specify the size of values
on which operation is performed
Lecture 01 8
Instruction Execution (MOV A,
X) Execute Instruction
Fetch Instruction
8088 Issue
IssueAddress
AddressofofX RAM
MOV A, X
MOV A, X
Address Bus
Code
Control Bus
Data Bus
Data
Decode Instruction
Decoding MOV A, X
Lecture 01 9
Instruction Execution
Instruction 8088 Operation
Fetch Decode Fetch Execute
MOV A, X Inst. Inst. Data A=3
MOV B, Y Inst. Inst. Data B=4
ADD C, A, B Inst. Inst. C=7
MOV Z, C Inst. Inst. Z=7
Lecture 01 10
Microprocessor executing Compare
Program
8088 RAM
Input Port
Output Port
Lecture 01 11
Internal hardware of 8088
Registers
temporary storage area to hold data values
Registers named A, B, C, D etc
Arithmetic Logic Unit (ALU)
Hardware which performs arithmetic and logical
operations
Control Unit
Decodes the instructions fetched from memory
Generates control signals to perform operations
Lecture 01 12