SlideShare a Scribd company logo
06/02/14 1
Micro Processors and
Applications
06/02/14 2
Introduction and Basics
 Computers are not complicated device,
 They are not infinitely intelligent
 They do not think better than people.
 A computer can only do what a programs
instruct through programs
 A program is just a sequence of simple
commands that help a computer solve a
problem
 Computers execute instructions very fast .
06/02/14 3
Basics
 The power and magic of a computer
lies in the speed at which it executes
instructions without a mistake
 The sequence of instructions executed
per second are very many (millions
steps) appears complicated altogether.
 These are considered to be a series of
very simple steps or commands
06/02/14 4
Basics (Cont’n)
 The microprocessor is a simple integrated
circuit (IC). Or very small computer have the
same commands or instructions they can
perform.
 The names used to describe the commands
make them vary.
 Microprocessors have commands that can,
move data around, do maths (add,multiply
etc) bring data in side the microprocessor
from out side the system and also send it out
side the system
06/02/14 5
Basic
 A typical Microprocessor has three basic parts inside
it: the program counter (PC) ,memory and
input/output (I/O).
 The program counter keeps track of which program is
to be executed
 The memory contains commands to be executed.
 The I/O deals with transferring of data from and to the
out systems.
 Microprocessors are housed inside chips.
 A microprocessor encounter branches during
program execution.Both conditional and non
conditional branches.
06/02/14 6
Basics
 The most difficult part of programming a
microprocessor is to define the problem
to solve.
 This is called the logical thought
process
 It is a good understanding of the
problem.
06/02/14 7
Decimal, Binary and Hex
 Microprocessors use binary numbering
system rather than the decimals for
counting ., and its why the computers are
called binary computers.
 Decimal is base 10 and binary is base 2. Hex-
decimal is base 16.
 The base of a system defines how many
possible numbers can be in each digit
position
Decimal: 0 to 9
Binary: 0 or 1
Hex 0 to 9, A, B C, D, E and F.
06/02/14 8
Microprocessor Instructions
 Microprocessors have instructions that they
send. The decimal, binary and hexadecimal
number indicated earlier are key to the
instruction execution.
 There are many kinds of memories in a
system. There is the unrear memory called
the flags.
 These are single bit numbers that are used to
indicate different conditions in a system.
 Ther are flags coz they flag the program of
events or conditiond
06/02/14 9
Instructions
 If a flag is raised or has a 1 in it, then it is said
to be SET, otherwise if its 0 then it is said to b
RESET
 In 8-bit byte, referred to as bit 0 through 7, 0
is right most and the least significant bit(LSB)
and 7 the most significant bit.
 Inside a microprocessor there are many
registers. These vary from one CPU to CPU.
All have a register called the accumulator,
sometimes called the A register.
06/02/14 10
Instructions
 The accumulator is used in for temporary
results and is 8 bits wide or a byte .
 In the CPU we will be using there are four
types of instructions, with a number of
variations. These four types are Arithmetic,
Logical, Branching, and Data Transfer. We
look at them independently next:
06/02/14 11
Arithmetic
 These include, addition, subtraction,
multiplication division, incrementing and
decrementing. In most early CPUs the
multiplications and division are not available.
 There are two flags used in Arithmetic that tell
the program the outcome of an instruction.
 These are
- Carry (C) flag
- Zero (Z) flag
 the Z flag if set, indicates that the instruction
left a value 0 in the accumulator.
06/02/14 12
Logical
 These are also mathematical
instructions, and they include
-OR, AND, XOR, ROTATE,
COMPLEMENT and CLEAR
 These commands are concerned with
the value or state of each bit in the data
rather than the value of the data they
work with.
06/02/14 13
Branching
 These are jumps or branches that help the
program flow commands. They are termed
differently depending on the way a jump is
done or the condition under which it is done,
e.g. overflow or underflow., zero result or not
zero.
 But all stop the normal sequential execution
of the program, and jump to another location,
other than the next instruction in sequence
06/02/14 14
Data Transfer
 These use Moving and Exchanging
 Moving helps move data across
registers and memory
 Exchange is a variation on the move
instruction. Data is moved between two
positions
06/02/14 15
Memory and Addressing
 There are several different types of
memory in a micro.
 One is Program memory.
 This is where the program is located.
 Another is Data memory.
 Where data, that might be used by the
program, is located.
06/02/14 16
Memory and Addressing-
cont’n
 They both reside in the same memory space
and can be changed by the program.
 That’s right, a program can actually alter itself
if that was necessary.
 Two terms are used when talking about
memory.
 Reading (load) is getting a value from
memory and Writing (store) is putting a value
into memory.
06/02/14 17
Types of Buses & their
functions
 There are three system buses associated
with the memory subsystem.

address bus,

data bus,

control bus.

It's important for you to know exactly how they work,
because these busses transport data and addresses
everywhere within the system.

All these buses are connected to the memory system,
which makes them interact with the microprocessors.
06/02/14 18
Functions
 We have different types of microprocessors:
8085, 8086 and other more types….
 In the 8085 microprocessor, the address bus
is 16-bits wide. It selects one of locations in
the 216
memory locations.
 The control bus determines whether this will
be a read or a write

In the case of an instruction fetch, the control bus is set
up for a read operation.
 Data is read or written through the data bus,
which is 8 bits wide. Explains why registers
and memory is 8-bits wide.
06/02/14 19
Bytes and Microprocessors
 A byte is the most used number in a
microprocessor because each memory
location or register is one byte wide.

Memory has to be thought of as a sort of file
cabinet with each location in it being a folder in
the cabinet.
 To get to each memory location, a
different method is used, that is

a unique address is assigned to each location.
06/02/14 20
Bytes
 In most microprocessors the address is
a word or 16 bits, or 4 digit hex.

This allows for a maximum of 65536 (216
or
64K) unique addresses or memory locations
that can be accessed.
06/02/14 21
Program Counter
 The Program Counter is what holds this
address when the microprocessor is
executing instructions.
 The reason instructions are read sequentially,
is because the program counter automatically
increments after fetching the current
instruction.
 It does this even before the current instruction
is acted upon.
06/02/14 22
Program Counter
 The sequence is that the program
counter's contents are placed on the
memory address bus.
 this allows the instruction to be fetched
from memory through the data bus, and
immediately the program counter is
incremented by 1.

Then the microprocessor looks at the
instruction and starts processing it
06/02/14 23
8086 Microprocessor
 Program, data and stack memories occupy the
same memory space.
 The total addressable memory size is 1MB KB.
 As the most of the processor instructions use
16-bit pointers the processor can effectively
address only 64 KB of memory.
 To access memory outside of 64 KB the CPU
uses special segment registers to specify
where the code, stack and data 64 KB
segments are positioned within 1 MB of
memory
06/02/14 24
8086 Microprocessor
 16-bit pointers and data are stored as:
address: low-order byte
address+1: high-order byte
 32-bit addresses are stored in
"segment:offset" format as:
address: low-order byte of segment
address+1: high-order byte of segment
address+2: low-order byte of offset
address+3: high-order byte of offset
 Physical memory address pointed by
segment:offset pair is calculated as:
 address = (<segment> * 16) + <offset>
06/02/14 25
8086 Memory
 Program memory - program can be
located anywhere in memory.
 Jump and call instructions can be used
for short jumps within currently
selected 64 KB code segment, as well
as for far jumps anywhere within 1 MB
of memory.
 All conditional jump instructions can be
used to jump within approximately
+127 to -127 bytes from current
instruction.
06/02/14 26
Memory-Cont’n
 Data memory - the processor can access
data in any one out of 4 available segments,
which limits the size of accessible memory to
256 KB (if all four segments point to different
64 KB blocks).
 Accessing data from the Data, Code, Stack or
Extra segments can be usually done by
prefixing instructions with the DS:, CS:, SS: or
ES:
 Some registers and instructions by default
may use the ES or SS segments instead of DS
segment.
06/02/14 27
Memory- cont’n
 Word data can be located at odd or even byte
boundaries.
 The processor uses two memory accesses to
read 16-bit word located at odd byte
boundaries. Reading word data from even byte
boundaries requires only one memory access.
 Stack memory can be placed anywhere in
memory. The stack can be located at odd
memory addresses, but it is not recommended
for performance reasons.
06/02/14 28
Reserved Locations

Reserved locations:

0000h - 03FFh are reserved for interrupt
vectors.

Each interrupt vector is a 32-bit pointer
in format segment:offset.

FFFF0h - FFFFFh - after RESET the
processor always starts program
execution at the FFFF0h address.
06/02/14 29
Interrupts
The processor has the following interrupts:
 INTR is a maskable hardware interrupt. The interrupt
can be enabled/disabled using STI/CLI instructions or
using more complicated method of updating the FLAGS
register with the help of the POPF instruction.
 When an interrupt occurs, the processor stores FLAGS
register into stack, disables further interrupts, fetches
from the bus one byte representing interrupt type, and
jumps to interrupt processing routine address of which
is stored in location 4 * <interrupt type>.
 Interrupt processing routine should return with the IRET
instruction
06/02/14 30
Interrupts
 NMI is a non-maskable interrupt. Interrupt is
processed in the same way as the INTR
interrupt.
 Interrupt type of the NMI is 2, i.e. the address
of the NMI processing routine is stored in
location 0008h.
 This interrupt has higher priority than the
maskable interrupt
06/02/14 31
Software Interrupts
 Software interrupts can be caused
by:
 INT instruction - breakpoint interrupt. This
is a type 3 interrupt.
 INT <interrupt number> instruction - any
one interrupt from available 256 interrupts.
 INTO instruction - interrupt on overflow
 Single-step interrupt - generated if the TF
flag is set. This is a type 1 interrupt.
06/02/14 32
Software Interrupts
 When the CPU processes this interrupt it
clears TF flag before calling the
 interrupt processing routine.
 Processor exceptions: divide error (type 0),
unused opcode (type 6) and escape opcode
(type 7).
 Software interrupt processing is the
same as for the hardware interrupts.
I/O ports
 65536 8-bit I/O ports. These ports can be also
addressed as 32768 16-bit I/O ports
06/02/14 33
Registers
 Most of the registers contain
data/instruction offsets within 64 KB
memory segment.
 There are four different 64 KB segments
for instructions, stack, data and extra
data.
 To specify where in 1 MB of processor
memory these 4 segments are located
the processor uses four segment
registers:
06/02/14 34
Segment Registers
 Code segment (CS) is a 16-bit register containing
address of 64 KB segment with processor instructions.
The processor uses CS segment for all accesses to
instructions referenced by instruction pointer (IP)
register. CS register cannot be changed directly. The CS
register is automatically updated during far jump, far
call and far return instructions.
 Stack segment (SS) is a 16-bit register containing
address of 64KB segment with program stack. By
default, the processor assumes that all data referenced
by the stack pointer (SP) and base pointer (BP)
registers is located in the stack segment. SS register
can be changed directly using POP instruction.
06/02/14 35
Segments
 Data segment (DS) is a 16-bit register containing
address of 64KB segment with program data. By
default, the processor assumes that all data referenced
by general registers (AX, BX, CX, DX) and index
register (SI, DI) is located in the data segment. DS
register can be changed directly using POP and LDS
instructions.
 Extra segment (ES) is a 16-bit register containing
address of 64KB segment, usually with program data.
By default, the processor assumes that the DI register
references the ES segment in string manipulation
instructions. ES register can be changed directly using
POP and LES instructions.
06/02/14 36
Analysis-segments
 It is possible to change default
segments used by general and
index registers by prefixing
instructions with a CS, SS, DS or
ES prefix.
 All general registers of the 8086
microprocessor can be used for
arithmetic and logic operations.
06/02/14 37
General Registers
 Accumulator register consists of 2 8-bit
registers AL and AH, which can be combined
together and used as a 16-bit register AX. AL
in this, it case contains the low-order byte of
the word, and AH contains the high-order
byte.
 Accumulator can be used for I/O operations
and string manipulation.
 Base register consists of 2 8-bit registers BL
and BH, which can be combined together and
used as a 16-bit register BX. BL in this case
contains the low-order byte of the word, and
06/02/14 38
General Registers-cont’n
 contains the high-order byte. BX register usually
contains a data pointer used for based, based indexed
or register indirect addressing.
 Count register consists of 2 8-bit registers CL and CH,
which can be combined together and used as a 16-bit
register CX.
 When combined, CL register contains the low-order byte
of the word, and CH contains the high-order byte.
 Count register can be used as a counter in string
manipulation and shift/rotate instructions.
06/02/14 39
General Registers – Cont’n
 Data register consists of 2 8-bit registers DL and
DH, which can be combined together and used as a
16-bit register DX.
 When combined, DL register contains the low-order
byte of the word, and DH contains the high-order
byte.
 Data register can be used as a port number in I/O
operations.
 In integer 32-bit multiply and divide instruction the DX
register contains high-order word of the initial or
resulting number.
06/02/14 40
Index Registers
 Stack Pointer (SP) is a 16-bit register pointing to
program stack.
 Base Pointer (BP) is a 16-bit register pointing to data
in stack segment. BP register is usually used for based,
based indexed or register indirect addressing.
 Source Index (SI) is a 16-bit register. SI is used for
indexed, based indexed and register indirect
addressing, as well as a source data address in string
manipulation instructions.
 Destination Index (DI) is a 16-bit register. DI is used
for indexed, based indexed and register indirect
addressing, as well as a destination data address in
string manipulation instructions.
06/02/14 41
Other Registers
 Instruction Pointer (IP) is
a 16-bit register.
 Flags is a 16-bit register
containing 9 1-bit flags:
 Overflow Flag (OF) - set if
the result is too large
positive number, or is too
small negative number to
fit into destination operand.
 Direction Flag (DF) - if set
then string manipulation
instructions will auto-
decrement index registers.
If cleared then the index
registers will be auto-
incremented.
 Interrupt-enable Flag (IF) -
setting this bit enables
maskable interrupts.
 Single-step Flag (TF) - if set
then single-step interrupt
will occur after the next
instruction.
 Sign Flag (SF) - set if the
most significant bit of the
result is set.
 Zero Flag (ZF) - set if the
result is zero.
 Auxiliary carry Flag (AF) -
set if there was a carry
from or borrow to bits 0-3
in the register.
06/02/14 42
 Parity Flag (PF) - set if parity (the
number of "1" bits) in the low-
order byte of the result is even.
 Carry Flag (CF) - set if there was a
carry from or borrow to the most
significant bit during last result
calculation.
06/02/14 43
Instruction Set-8086
 8086 instruction set consists of the following
instructions:
 Data moving instructions.
 Arithmetic - add, subtract, increment, decrement, convert
byte/word and compare.
 Logic - AND, OR, exclusive OR, shift/rotate and test.
 String manipulation - load, store, move, compare and scan
for byte/word.
 Control transfer - conditional, unconditional, call
subroutine and return from subroutine.
 Input/Output instructions.
 Other - setting/clearing flag bits, stack operations,
software interrupts, etc.
06/02/14 44
Addressing Mode
 Implied - the data value/data address is
implicitly associated with the instruction.
 Register - references the data in a register or
in a register pair.
 Immediate - the data is provided in the
instruction.
 Direct - the instruction operand specifies the
memory address where data is located.
 Register indirect - instruction specifies a
register containing an address, where data is
located. This addressing mode works with SI,
DI, BX and BP registers.
06/02/14 45
Addressing Mode
 Based - 8-bit or 16-bit instruction operand is added to the
contents of a base register (BX or BP), the resulting value is a
pointer to location where data resides.
 Indexed - 8-bit or 16-bit instruction operand is added to the
contents of an index register (SI or DI), the resulting value is
a pointer to location where data resides.
 Based Indexed - the contents of a base register (BX or BP)
is added to the contents of an index register (SI or DI), the
resulting value is a pointer to location where data resides.
 Based Indexed with displacement - 8-bit or 16-bit
instruction operand is added to the contents of a base register
(BX or BP) and index register (SI or DI), the resulting value is
a pointer to location where data resides.
Ad

More Related Content

What's hot (20)

Overview of microcontroller and microprocessor
Overview of microcontroller and microprocessor Overview of microcontroller and microprocessor
Overview of microcontroller and microprocessor
Mrunal Deshkar
 
8085 microprocessor Architecture and Pin description
8085 microprocessor Architecture and Pin description 8085 microprocessor Architecture and Pin description
8085 microprocessor Architecture and Pin description
Vijay Kumar
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInstruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
InteX Research Lab
 
Memory banking-of-8086-final
Memory banking-of-8086-finalMemory banking-of-8086-final
Memory banking-of-8086-final
Estiak Khan
 
Microprocessor
MicroprocessorMicroprocessor
Microprocessor
Punjab College Of Technical Education
 
Instruction set of 8085 microprocessor
Instruction set of 8085 microprocessorInstruction set of 8085 microprocessor
Instruction set of 8085 microprocessor
Rahul Sahu
 
Microcontroller-8051.ppt
Microcontroller-8051.pptMicrocontroller-8051.ppt
Microcontroller-8051.ppt
Dr.YNM
 
8085 Interfacing with I/O Devices or Memory
8085 Interfacing with I/O Devices or Memory8085 Interfacing with I/O Devices or Memory
8085 Interfacing with I/O Devices or Memory
Saumay Paul
 
Stacks & subroutines 1
Stacks & subroutines 1Stacks & subroutines 1
Stacks & subroutines 1
deval patel
 
Assembly Language Programming Of 8085
Assembly Language Programming Of 8085Assembly Language Programming Of 8085
Assembly Language Programming Of 8085
techbed
 
Microprocessor Fundamentals
Microprocessor FundamentalsMicroprocessor Fundamentals
Microprocessor Fundamentals
Diwaker Pant
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor
Mustapha Fatty
 
MPMC Microprocessor
MPMC MicroprocessorMPMC Microprocessor
MPMC Microprocessor
A.S. Krishna
 
AVR ATmega32
AVR ATmega32AVR ATmega32
AVR ATmega32
Prashant Tiwari
 
INTERRUPTS OF 8086 MICROPROCESSOR
INTERRUPTS OF 8086 MICROPROCESSORINTERRUPTS OF 8086 MICROPROCESSOR
INTERRUPTS OF 8086 MICROPROCESSOR
Gurudev joshi
 
Read & write
Read & writeRead & write
Read & write
malaybpramanik
 
Microcontroller presentation
Microcontroller presentationMicrocontroller presentation
Microcontroller presentation
xavierpaulino
 
Control unit
Control unitControl unit
Control unit
Piyush Rochwani
 
Introduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorIntroduction to 8085 Microprocessor
Introduction to 8085 Microprocessor
Ravi Anand
 
8085-microprocessor
8085-microprocessor8085-microprocessor
8085-microprocessor
ATTO RATHORE
 
Overview of microcontroller and microprocessor
Overview of microcontroller and microprocessor Overview of microcontroller and microprocessor
Overview of microcontroller and microprocessor
Mrunal Deshkar
 
8085 microprocessor Architecture and Pin description
8085 microprocessor Architecture and Pin description 8085 microprocessor Architecture and Pin description
8085 microprocessor Architecture and Pin description
Vijay Kumar
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInstruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
InteX Research Lab
 
Memory banking-of-8086-final
Memory banking-of-8086-finalMemory banking-of-8086-final
Memory banking-of-8086-final
Estiak Khan
 
Instruction set of 8085 microprocessor
Instruction set of 8085 microprocessorInstruction set of 8085 microprocessor
Instruction set of 8085 microprocessor
Rahul Sahu
 
Microcontroller-8051.ppt
Microcontroller-8051.pptMicrocontroller-8051.ppt
Microcontroller-8051.ppt
Dr.YNM
 
8085 Interfacing with I/O Devices or Memory
8085 Interfacing with I/O Devices or Memory8085 Interfacing with I/O Devices or Memory
8085 Interfacing with I/O Devices or Memory
Saumay Paul
 
Stacks & subroutines 1
Stacks & subroutines 1Stacks & subroutines 1
Stacks & subroutines 1
deval patel
 
Assembly Language Programming Of 8085
Assembly Language Programming Of 8085Assembly Language Programming Of 8085
Assembly Language Programming Of 8085
techbed
 
Microprocessor Fundamentals
Microprocessor FundamentalsMicroprocessor Fundamentals
Microprocessor Fundamentals
Diwaker Pant
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor
Mustapha Fatty
 
MPMC Microprocessor
MPMC MicroprocessorMPMC Microprocessor
MPMC Microprocessor
A.S. Krishna
 
INTERRUPTS OF 8086 MICROPROCESSOR
INTERRUPTS OF 8086 MICROPROCESSORINTERRUPTS OF 8086 MICROPROCESSOR
INTERRUPTS OF 8086 MICROPROCESSOR
Gurudev joshi
 
Microcontroller presentation
Microcontroller presentationMicrocontroller presentation
Microcontroller presentation
xavierpaulino
 
Introduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorIntroduction to 8085 Microprocessor
Introduction to 8085 Microprocessor
Ravi Anand
 
8085-microprocessor
8085-microprocessor8085-microprocessor
8085-microprocessor
ATTO RATHORE
 

Viewers also liked (20)

Applications of microprocessor
Applications of microprocessorApplications of microprocessor
Applications of microprocessor
Anjali Agrawal
 
Microprocessor and Application (8085)
Microprocessor and Application (8085)Microprocessor and Application (8085)
Microprocessor and Application (8085)
ufaq kk
 
Application of microprocessor
Application of microprocessorApplication of microprocessor
Application of microprocessor
Sandeep Kamath
 
Microprocessor applications
Microprocessor applicationsMicroprocessor applications
Microprocessor applications
Rohit Gothwal
 
TRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSOR
TRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSORTRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSOR
TRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSOR
Subash Sambath Kumar
 
Microprocessor ppt
Microprocessor pptMicroprocessor ppt
Microprocessor ppt
swaminath kanhere
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkar
SAQUIB AHMAD
 
Automatic temperature control using 8085 microprocessor
Automatic temperature control using 8085 microprocessorAutomatic temperature control using 8085 microprocessor
Automatic temperature control using 8085 microprocessor
subhradeep mitra
 
I2C BUS
I2C BUSI2C BUS
I2C BUS
p_ayal
 
Applications of microcontroller
Applications of microcontrollerApplications of microcontroller
Applications of microcontroller
babak danyal
 
Microcontroller in automobile and applications
Microcontroller in automobile and applicationsMicrocontroller in automobile and applications
Microcontroller in automobile and applications
Kartik Kalpande Patil
 
Robotics & Embedded Systems
Robotics & Embedded SystemsRobotics & Embedded Systems
Robotics & Embedded Systems
anishgoel
 
8085 MICROPROCESSOR
8085 MICROPROCESSOR 8085 MICROPROCESSOR
8085 MICROPROCESSOR
THANDAIAH PRABU
 
TCP congestion control
TCP congestion controlTCP congestion control
TCP congestion control
Shubham Jain
 
robotics and embedded system ppt
robotics and embedded system pptrobotics and embedded system ppt
robotics and embedded system ppt
Nilgiri publicity
 
Microcontroller based transformer protectio
Microcontroller based transformer protectioMicrocontroller based transformer protectio
Microcontroller based transformer protectio
Aminu Bugaje
 
Transformer protection using microcontroller and gsm technology
Transformer protection using microcontroller and gsm technologyTransformer protection using microcontroller and gsm technology
Transformer protection using microcontroller and gsm technology
Kartik Patel
 
Congestion control in tcp
Congestion control in tcpCongestion control in tcp
Congestion control in tcp
samarai_apoc
 
8085 Architecture & Memory Interfacing1
8085 Architecture & Memory Interfacing18085 Architecture & Memory Interfacing1
8085 Architecture & Memory Interfacing1
techbed
 
AI: AI & Problem Solving
AI: AI & Problem SolvingAI: AI & Problem Solving
AI: AI & Problem Solving
DataminingTools Inc
 
Applications of microprocessor
Applications of microprocessorApplications of microprocessor
Applications of microprocessor
Anjali Agrawal
 
Microprocessor and Application (8085)
Microprocessor and Application (8085)Microprocessor and Application (8085)
Microprocessor and Application (8085)
ufaq kk
 
Application of microprocessor
Application of microprocessorApplication of microprocessor
Application of microprocessor
Sandeep Kamath
 
Microprocessor applications
Microprocessor applicationsMicroprocessor applications
Microprocessor applications
Rohit Gothwal
 
TRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSOR
TRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSORTRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSOR
TRAFFIC LIGHT CONTROL SYSTEM USING 8085 MICROPROCESSOR
Subash Sambath Kumar
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkar
SAQUIB AHMAD
 
Automatic temperature control using 8085 microprocessor
Automatic temperature control using 8085 microprocessorAutomatic temperature control using 8085 microprocessor
Automatic temperature control using 8085 microprocessor
subhradeep mitra
 
I2C BUS
I2C BUSI2C BUS
I2C BUS
p_ayal
 
Applications of microcontroller
Applications of microcontrollerApplications of microcontroller
Applications of microcontroller
babak danyal
 
Microcontroller in automobile and applications
Microcontroller in automobile and applicationsMicrocontroller in automobile and applications
Microcontroller in automobile and applications
Kartik Kalpande Patil
 
Robotics & Embedded Systems
Robotics & Embedded SystemsRobotics & Embedded Systems
Robotics & Embedded Systems
anishgoel
 
TCP congestion control
TCP congestion controlTCP congestion control
TCP congestion control
Shubham Jain
 
robotics and embedded system ppt
robotics and embedded system pptrobotics and embedded system ppt
robotics and embedded system ppt
Nilgiri publicity
 
Microcontroller based transformer protectio
Microcontroller based transformer protectioMicrocontroller based transformer protectio
Microcontroller based transformer protectio
Aminu Bugaje
 
Transformer protection using microcontroller and gsm technology
Transformer protection using microcontroller and gsm technologyTransformer protection using microcontroller and gsm technology
Transformer protection using microcontroller and gsm technology
Kartik Patel
 
Congestion control in tcp
Congestion control in tcpCongestion control in tcp
Congestion control in tcp
samarai_apoc
 
8085 Architecture & Memory Interfacing1
8085 Architecture & Memory Interfacing18085 Architecture & Memory Interfacing1
8085 Architecture & Memory Interfacing1
techbed
 
Ad

Similar to Microprocessor application (Introduction) (20)

Differents Classes of CPU Registers.docx
Differents Classes of CPU Registers.docxDifferents Classes of CPU Registers.docx
Differents Classes of CPU Registers.docx
Amudha Shanmugam
 
Computer.pptx
Computer.pptxComputer.pptx
Computer.pptx
WtaJwankan
 
Introduction to uP-Chadasdffpter I-3.ppt
Introduction to uP-Chadasdffpter I-3.pptIntroduction to uP-Chadasdffpter I-3.ppt
Introduction to uP-Chadasdffpter I-3.ppt
YAGYABAHADURSHAHI
 
IS 139 Lecture 5
IS 139 Lecture 5IS 139 Lecture 5
IS 139 Lecture 5
wajanga
 
Unit2fit
Unit2fitUnit2fit
Unit2fit
Akshay Rathi
 
System Programming- Unit I
System Programming- Unit ISystem Programming- Unit I
System Programming- Unit I
Saranya1702
 
Register & Memory
Register & MemoryRegister & Memory
Register & Memory
Education Front
 
8085
80858085
8085
Damini Thakur
 
Computer Arithmetic and Processor Basics
Computer Arithmetic and Processor BasicsComputer Arithmetic and Processor Basics
Computer Arithmetic and Processor Basics
ShinuMMAEI
 
8085 archi
8085 archi8085 archi
8085 archi
HarshitParkar6677
 
UNIT 2_ESD.pdf
UNIT 2_ESD.pdfUNIT 2_ESD.pdf
UNIT 2_ESD.pdf
SaralaT3
 
8085
80858085
8085
Mohammed Khan
 
Architecture OF 8085
Architecture OF 8085Architecture OF 8085
Architecture OF 8085
muneer.k
 
8085
80858085
8085
Donika Markande
 
8085 microprocessor
8085 microprocessor8085 microprocessor
8085 microprocessor
gohanraw
 
Hcs Topic 2 Computer Structure V2
Hcs Topic 2  Computer Structure V2Hcs Topic 2  Computer Structure V2
Hcs Topic 2 Computer Structure V2
ekul
 
Hcs Topic 2 Computer Structure V2
Hcs Topic 2  Computer Structure V2Hcs Topic 2  Computer Structure V2
Hcs Topic 2 Computer Structure V2
Kyle
 
Hcs Topic 2 Computer Structure V2
Hcs Topic 2  Computer Structure V2Hcs Topic 2  Computer Structure V2
Hcs Topic 2 Computer Structure V2
Naruin
 
INSTRUCTION TYPES
INSTRUCTION TYPESINSTRUCTION TYPES
INSTRUCTION TYPES
devi195058
 
Microcontroller
MicrocontrollerMicrocontroller
Microcontroller
Maha lakshmi
 
Differents Classes of CPU Registers.docx
Differents Classes of CPU Registers.docxDifferents Classes of CPU Registers.docx
Differents Classes of CPU Registers.docx
Amudha Shanmugam
 
Introduction to uP-Chadasdffpter I-3.ppt
Introduction to uP-Chadasdffpter I-3.pptIntroduction to uP-Chadasdffpter I-3.ppt
Introduction to uP-Chadasdffpter I-3.ppt
YAGYABAHADURSHAHI
 
IS 139 Lecture 5
IS 139 Lecture 5IS 139 Lecture 5
IS 139 Lecture 5
wajanga
 
System Programming- Unit I
System Programming- Unit ISystem Programming- Unit I
System Programming- Unit I
Saranya1702
 
Computer Arithmetic and Processor Basics
Computer Arithmetic and Processor BasicsComputer Arithmetic and Processor Basics
Computer Arithmetic and Processor Basics
ShinuMMAEI
 
UNIT 2_ESD.pdf
UNIT 2_ESD.pdfUNIT 2_ESD.pdf
UNIT 2_ESD.pdf
SaralaT3
 
Architecture OF 8085
Architecture OF 8085Architecture OF 8085
Architecture OF 8085
muneer.k
 
8085 microprocessor
8085 microprocessor8085 microprocessor
8085 microprocessor
gohanraw
 
Hcs Topic 2 Computer Structure V2
Hcs Topic 2  Computer Structure V2Hcs Topic 2  Computer Structure V2
Hcs Topic 2 Computer Structure V2
ekul
 
Hcs Topic 2 Computer Structure V2
Hcs Topic 2  Computer Structure V2Hcs Topic 2  Computer Structure V2
Hcs Topic 2 Computer Structure V2
Kyle
 
Hcs Topic 2 Computer Structure V2
Hcs Topic 2  Computer Structure V2Hcs Topic 2  Computer Structure V2
Hcs Topic 2 Computer Structure V2
Naruin
 
INSTRUCTION TYPES
INSTRUCTION TYPESINSTRUCTION TYPES
INSTRUCTION TYPES
devi195058
 
Ad

More from Ismail Mukiibi (15)

Relational database (Unit 2)
Relational database (Unit 2)Relational database (Unit 2)
Relational database (Unit 2)
Ismail Mukiibi
 
Relational data base management system (Unit 1)
Relational data base management system (Unit 1)Relational data base management system (Unit 1)
Relational data base management system (Unit 1)
Ismail Mukiibi
 
Quality of service
Quality of serviceQuality of service
Quality of service
Ismail Mukiibi
 
IP/MAC Address Translation
IP/MAC Address TranslationIP/MAC Address Translation
IP/MAC Address Translation
Ismail Mukiibi
 
Traffic Characterization
Traffic CharacterizationTraffic Characterization
Traffic Characterization
Ismail Mukiibi
 
PHP POWERPOINT SLIDES
PHP POWERPOINT SLIDESPHP POWERPOINT SLIDES
PHP POWERPOINT SLIDES
Ismail Mukiibi
 
Html notes
Html notesHtml notes
Html notes
Ismail Mukiibi
 
Advanced computer architecture lesson 1 and 2
Advanced computer architecture lesson 1 and 2Advanced computer architecture lesson 1 and 2
Advanced computer architecture lesson 1 and 2
Ismail Mukiibi
 
Advanced computer architect lesson 3 and 4
Advanced computer architect lesson 3 and 4Advanced computer architect lesson 3 and 4
Advanced computer architect lesson 3 and 4
Ismail Mukiibi
 
Advanced computer architecture lesson 5 and 6
Advanced computer architecture lesson 5 and 6Advanced computer architecture lesson 5 and 6
Advanced computer architecture lesson 5 and 6
Ismail Mukiibi
 
Pc hardware course work
Pc hardware course workPc hardware course work
Pc hardware course work
Ismail Mukiibi
 
Mac addresses(media access control)
Mac addresses(media access control)Mac addresses(media access control)
Mac addresses(media access control)
Ismail Mukiibi
 
Kinds of networks
Kinds of networksKinds of networks
Kinds of networks
Ismail Mukiibi
 
Why building collapse in kampala
Why building collapse in kampalaWhy building collapse in kampala
Why building collapse in kampala
Ismail Mukiibi
 
Compare peer
Compare peerCompare peer
Compare peer
Ismail Mukiibi
 
Relational database (Unit 2)
Relational database (Unit 2)Relational database (Unit 2)
Relational database (Unit 2)
Ismail Mukiibi
 
Relational data base management system (Unit 1)
Relational data base management system (Unit 1)Relational data base management system (Unit 1)
Relational data base management system (Unit 1)
Ismail Mukiibi
 
IP/MAC Address Translation
IP/MAC Address TranslationIP/MAC Address Translation
IP/MAC Address Translation
Ismail Mukiibi
 
Traffic Characterization
Traffic CharacterizationTraffic Characterization
Traffic Characterization
Ismail Mukiibi
 
Advanced computer architecture lesson 1 and 2
Advanced computer architecture lesson 1 and 2Advanced computer architecture lesson 1 and 2
Advanced computer architecture lesson 1 and 2
Ismail Mukiibi
 
Advanced computer architect lesson 3 and 4
Advanced computer architect lesson 3 and 4Advanced computer architect lesson 3 and 4
Advanced computer architect lesson 3 and 4
Ismail Mukiibi
 
Advanced computer architecture lesson 5 and 6
Advanced computer architecture lesson 5 and 6Advanced computer architecture lesson 5 and 6
Advanced computer architecture lesson 5 and 6
Ismail Mukiibi
 
Pc hardware course work
Pc hardware course workPc hardware course work
Pc hardware course work
Ismail Mukiibi
 
Mac addresses(media access control)
Mac addresses(media access control)Mac addresses(media access control)
Mac addresses(media access control)
Ismail Mukiibi
 
Why building collapse in kampala
Why building collapse in kampalaWhy building collapse in kampala
Why building collapse in kampala
Ismail Mukiibi
 

Recently uploaded (20)

Political History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptxPolitical History of Pala dynasty Pala Rulers NEP.pptx
Political History of Pala dynasty Pala Rulers NEP.pptx
Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025
Mebane Rash
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 4-30-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 4-30-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdfExploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Sandeep Swamy
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
Operations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdfOperations Management (Dr. Abdulfatah Salem).pdf
Operations Management (Dr. Abdulfatah Salem).pdf
Arab Academy for Science, Technology and Maritime Transport
 
Presentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem KayaPresentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem Kaya
MIPLM
 
P-glycoprotein pamphlet: iteration 4 of 4 final
P-glycoprotein pamphlet: iteration 4 of 4 finalP-glycoprotein pamphlet: iteration 4 of 4 final
P-glycoprotein pamphlet: iteration 4 of 4 final
bs22n2s
 
LDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini UpdatesLDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini Updates
LDM Mia eStudios
 
YSPH VMOC Special Report - Measles Outbreak Southwest US 5-3-2025.pptx
YSPH VMOC Special Report - Measles Outbreak  Southwest US 5-3-2025.pptxYSPH VMOC Special Report - Measles Outbreak  Southwest US 5-3-2025.pptx
YSPH VMOC Special Report - Measles Outbreak Southwest US 5-3-2025.pptx
Yale School of Public Health - The Virtual Medical Operations Center (VMOC)
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Library Association of Ireland
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
Quality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdfQuality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdf
Dr. Bindiya Chauhan
 
New Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxNew Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptx
milanasargsyan5
 
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
larencebapu132
 
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Library Association of Ireland
 
Sinhala_Male_Names.pdf Sinhala_Male_Name
Sinhala_Male_Names.pdf Sinhala_Male_NameSinhala_Male_Names.pdf Sinhala_Male_Name
Sinhala_Male_Names.pdf Sinhala_Male_Name
keshanf79
 
To study Digestive system of insect.pptx
To study Digestive system of insect.pptxTo study Digestive system of insect.pptx
To study Digestive system of insect.pptx
Arshad Shaikh
 
Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025Stein, Hunt, Green letter to Congress April 2025
Stein, Hunt, Green letter to Congress April 2025
Mebane Rash
 
GDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptxGDGLSPGCOER - Git and GitHub Workshop.pptx
GDGLSPGCOER - Git and GitHub Workshop.pptx
azeenhodekar
 
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdfExploring-Substances-Acidic-Basic-and-Neutral.pdf
Exploring-Substances-Acidic-Basic-and-Neutral.pdf
Sandeep Swamy
 
Introduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe EngineeringIntroduction to Vibe Coding and Vibe Engineering
Introduction to Vibe Coding and Vibe Engineering
Damian T. Gordon
 
Presentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem KayaPresentation of the MIPLM subject matter expert Erdem Kaya
Presentation of the MIPLM subject matter expert Erdem Kaya
MIPLM
 
P-glycoprotein pamphlet: iteration 4 of 4 final
P-glycoprotein pamphlet: iteration 4 of 4 finalP-glycoprotein pamphlet: iteration 4 of 4 final
P-glycoprotein pamphlet: iteration 4 of 4 final
bs22n2s
 
LDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini UpdatesLDMMIA Reiki Master Spring 2025 Mini Updates
LDMMIA Reiki Master Spring 2025 Mini Updates
LDM Mia eStudios
 
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public SchoolsK12 Tableau Tuesday  - Algebra Equity and Access in Atlanta Public Schools
K12 Tableau Tuesday - Algebra Equity and Access in Atlanta Public Schools
dogden2
 
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Michelle Rumley & Mairéad Mooney, Boole Library, University College Cork. Tra...
Library Association of Ireland
 
One Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learningOne Hot encoding a revolution in Machine learning
One Hot encoding a revolution in Machine learning
momer9505
 
Quality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdfQuality Contril Analysis of Containers.pdf
Quality Contril Analysis of Containers.pdf
Dr. Bindiya Chauhan
 
New Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxNew Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptx
milanasargsyan5
 
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
World war-1(Causes & impacts at a glance) PPT by Simanchala Sarab(BABed,sem-4...
larencebapu132
 
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Marie Boran Special Collections Librarian Hardiman Library, University of Gal...
Library Association of Ireland
 
Sinhala_Male_Names.pdf Sinhala_Male_Name
Sinhala_Male_Names.pdf Sinhala_Male_NameSinhala_Male_Names.pdf Sinhala_Male_Name
Sinhala_Male_Names.pdf Sinhala_Male_Name
keshanf79
 
To study Digestive system of insect.pptx
To study Digestive system of insect.pptxTo study Digestive system of insect.pptx
To study Digestive system of insect.pptx
Arshad Shaikh
 

Microprocessor application (Introduction)

  • 1. 06/02/14 1 Micro Processors and Applications
  • 2. 06/02/14 2 Introduction and Basics  Computers are not complicated device,  They are not infinitely intelligent  They do not think better than people.  A computer can only do what a programs instruct through programs  A program is just a sequence of simple commands that help a computer solve a problem  Computers execute instructions very fast .
  • 3. 06/02/14 3 Basics  The power and magic of a computer lies in the speed at which it executes instructions without a mistake  The sequence of instructions executed per second are very many (millions steps) appears complicated altogether.  These are considered to be a series of very simple steps or commands
  • 4. 06/02/14 4 Basics (Cont’n)  The microprocessor is a simple integrated circuit (IC). Or very small computer have the same commands or instructions they can perform.  The names used to describe the commands make them vary.  Microprocessors have commands that can, move data around, do maths (add,multiply etc) bring data in side the microprocessor from out side the system and also send it out side the system
  • 5. 06/02/14 5 Basic  A typical Microprocessor has three basic parts inside it: the program counter (PC) ,memory and input/output (I/O).  The program counter keeps track of which program is to be executed  The memory contains commands to be executed.  The I/O deals with transferring of data from and to the out systems.  Microprocessors are housed inside chips.  A microprocessor encounter branches during program execution.Both conditional and non conditional branches.
  • 6. 06/02/14 6 Basics  The most difficult part of programming a microprocessor is to define the problem to solve.  This is called the logical thought process  It is a good understanding of the problem.
  • 7. 06/02/14 7 Decimal, Binary and Hex  Microprocessors use binary numbering system rather than the decimals for counting ., and its why the computers are called binary computers.  Decimal is base 10 and binary is base 2. Hex- decimal is base 16.  The base of a system defines how many possible numbers can be in each digit position Decimal: 0 to 9 Binary: 0 or 1 Hex 0 to 9, A, B C, D, E and F.
  • 8. 06/02/14 8 Microprocessor Instructions  Microprocessors have instructions that they send. The decimal, binary and hexadecimal number indicated earlier are key to the instruction execution.  There are many kinds of memories in a system. There is the unrear memory called the flags.  These are single bit numbers that are used to indicate different conditions in a system.  Ther are flags coz they flag the program of events or conditiond
  • 9. 06/02/14 9 Instructions  If a flag is raised or has a 1 in it, then it is said to be SET, otherwise if its 0 then it is said to b RESET  In 8-bit byte, referred to as bit 0 through 7, 0 is right most and the least significant bit(LSB) and 7 the most significant bit.  Inside a microprocessor there are many registers. These vary from one CPU to CPU. All have a register called the accumulator, sometimes called the A register.
  • 10. 06/02/14 10 Instructions  The accumulator is used in for temporary results and is 8 bits wide or a byte .  In the CPU we will be using there are four types of instructions, with a number of variations. These four types are Arithmetic, Logical, Branching, and Data Transfer. We look at them independently next:
  • 11. 06/02/14 11 Arithmetic  These include, addition, subtraction, multiplication division, incrementing and decrementing. In most early CPUs the multiplications and division are not available.  There are two flags used in Arithmetic that tell the program the outcome of an instruction.  These are - Carry (C) flag - Zero (Z) flag  the Z flag if set, indicates that the instruction left a value 0 in the accumulator.
  • 12. 06/02/14 12 Logical  These are also mathematical instructions, and they include -OR, AND, XOR, ROTATE, COMPLEMENT and CLEAR  These commands are concerned with the value or state of each bit in the data rather than the value of the data they work with.
  • 13. 06/02/14 13 Branching  These are jumps or branches that help the program flow commands. They are termed differently depending on the way a jump is done or the condition under which it is done, e.g. overflow or underflow., zero result or not zero.  But all stop the normal sequential execution of the program, and jump to another location, other than the next instruction in sequence
  • 14. 06/02/14 14 Data Transfer  These use Moving and Exchanging  Moving helps move data across registers and memory  Exchange is a variation on the move instruction. Data is moved between two positions
  • 15. 06/02/14 15 Memory and Addressing  There are several different types of memory in a micro.  One is Program memory.  This is where the program is located.  Another is Data memory.  Where data, that might be used by the program, is located.
  • 16. 06/02/14 16 Memory and Addressing- cont’n  They both reside in the same memory space and can be changed by the program.  That’s right, a program can actually alter itself if that was necessary.  Two terms are used when talking about memory.  Reading (load) is getting a value from memory and Writing (store) is putting a value into memory.
  • 17. 06/02/14 17 Types of Buses & their functions  There are three system buses associated with the memory subsystem.  address bus,  data bus,  control bus.  It's important for you to know exactly how they work, because these busses transport data and addresses everywhere within the system.  All these buses are connected to the memory system, which makes them interact with the microprocessors.
  • 18. 06/02/14 18 Functions  We have different types of microprocessors: 8085, 8086 and other more types….  In the 8085 microprocessor, the address bus is 16-bits wide. It selects one of locations in the 216 memory locations.  The control bus determines whether this will be a read or a write  In the case of an instruction fetch, the control bus is set up for a read operation.  Data is read or written through the data bus, which is 8 bits wide. Explains why registers and memory is 8-bits wide.
  • 19. 06/02/14 19 Bytes and Microprocessors  A byte is the most used number in a microprocessor because each memory location or register is one byte wide.  Memory has to be thought of as a sort of file cabinet with each location in it being a folder in the cabinet.  To get to each memory location, a different method is used, that is  a unique address is assigned to each location.
  • 20. 06/02/14 20 Bytes  In most microprocessors the address is a word or 16 bits, or 4 digit hex.  This allows for a maximum of 65536 (216 or 64K) unique addresses or memory locations that can be accessed.
  • 21. 06/02/14 21 Program Counter  The Program Counter is what holds this address when the microprocessor is executing instructions.  The reason instructions are read sequentially, is because the program counter automatically increments after fetching the current instruction.  It does this even before the current instruction is acted upon.
  • 22. 06/02/14 22 Program Counter  The sequence is that the program counter's contents are placed on the memory address bus.  this allows the instruction to be fetched from memory through the data bus, and immediately the program counter is incremented by 1.  Then the microprocessor looks at the instruction and starts processing it
  • 23. 06/02/14 23 8086 Microprocessor  Program, data and stack memories occupy the same memory space.  The total addressable memory size is 1MB KB.  As the most of the processor instructions use 16-bit pointers the processor can effectively address only 64 KB of memory.  To access memory outside of 64 KB the CPU uses special segment registers to specify where the code, stack and data 64 KB segments are positioned within 1 MB of memory
  • 24. 06/02/14 24 8086 Microprocessor  16-bit pointers and data are stored as: address: low-order byte address+1: high-order byte  32-bit addresses are stored in "segment:offset" format as: address: low-order byte of segment address+1: high-order byte of segment address+2: low-order byte of offset address+3: high-order byte of offset  Physical memory address pointed by segment:offset pair is calculated as:  address = (<segment> * 16) + <offset>
  • 25. 06/02/14 25 8086 Memory  Program memory - program can be located anywhere in memory.  Jump and call instructions can be used for short jumps within currently selected 64 KB code segment, as well as for far jumps anywhere within 1 MB of memory.  All conditional jump instructions can be used to jump within approximately +127 to -127 bytes from current instruction.
  • 26. 06/02/14 26 Memory-Cont’n  Data memory - the processor can access data in any one out of 4 available segments, which limits the size of accessible memory to 256 KB (if all four segments point to different 64 KB blocks).  Accessing data from the Data, Code, Stack or Extra segments can be usually done by prefixing instructions with the DS:, CS:, SS: or ES:  Some registers and instructions by default may use the ES or SS segments instead of DS segment.
  • 27. 06/02/14 27 Memory- cont’n  Word data can be located at odd or even byte boundaries.  The processor uses two memory accesses to read 16-bit word located at odd byte boundaries. Reading word data from even byte boundaries requires only one memory access.  Stack memory can be placed anywhere in memory. The stack can be located at odd memory addresses, but it is not recommended for performance reasons.
  • 28. 06/02/14 28 Reserved Locations  Reserved locations:  0000h - 03FFh are reserved for interrupt vectors.  Each interrupt vector is a 32-bit pointer in format segment:offset.  FFFF0h - FFFFFh - after RESET the processor always starts program execution at the FFFF0h address.
  • 29. 06/02/14 29 Interrupts The processor has the following interrupts:  INTR is a maskable hardware interrupt. The interrupt can be enabled/disabled using STI/CLI instructions or using more complicated method of updating the FLAGS register with the help of the POPF instruction.  When an interrupt occurs, the processor stores FLAGS register into stack, disables further interrupts, fetches from the bus one byte representing interrupt type, and jumps to interrupt processing routine address of which is stored in location 4 * <interrupt type>.  Interrupt processing routine should return with the IRET instruction
  • 30. 06/02/14 30 Interrupts  NMI is a non-maskable interrupt. Interrupt is processed in the same way as the INTR interrupt.  Interrupt type of the NMI is 2, i.e. the address of the NMI processing routine is stored in location 0008h.  This interrupt has higher priority than the maskable interrupt
  • 31. 06/02/14 31 Software Interrupts  Software interrupts can be caused by:  INT instruction - breakpoint interrupt. This is a type 3 interrupt.  INT <interrupt number> instruction - any one interrupt from available 256 interrupts.  INTO instruction - interrupt on overflow  Single-step interrupt - generated if the TF flag is set. This is a type 1 interrupt.
  • 32. 06/02/14 32 Software Interrupts  When the CPU processes this interrupt it clears TF flag before calling the  interrupt processing routine.  Processor exceptions: divide error (type 0), unused opcode (type 6) and escape opcode (type 7).  Software interrupt processing is the same as for the hardware interrupts. I/O ports  65536 8-bit I/O ports. These ports can be also addressed as 32768 16-bit I/O ports
  • 33. 06/02/14 33 Registers  Most of the registers contain data/instruction offsets within 64 KB memory segment.  There are four different 64 KB segments for instructions, stack, data and extra data.  To specify where in 1 MB of processor memory these 4 segments are located the processor uses four segment registers:
  • 34. 06/02/14 34 Segment Registers  Code segment (CS) is a 16-bit register containing address of 64 KB segment with processor instructions. The processor uses CS segment for all accesses to instructions referenced by instruction pointer (IP) register. CS register cannot be changed directly. The CS register is automatically updated during far jump, far call and far return instructions.  Stack segment (SS) is a 16-bit register containing address of 64KB segment with program stack. By default, the processor assumes that all data referenced by the stack pointer (SP) and base pointer (BP) registers is located in the stack segment. SS register can be changed directly using POP instruction.
  • 35. 06/02/14 35 Segments  Data segment (DS) is a 16-bit register containing address of 64KB segment with program data. By default, the processor assumes that all data referenced by general registers (AX, BX, CX, DX) and index register (SI, DI) is located in the data segment. DS register can be changed directly using POP and LDS instructions.  Extra segment (ES) is a 16-bit register containing address of 64KB segment, usually with program data. By default, the processor assumes that the DI register references the ES segment in string manipulation instructions. ES register can be changed directly using POP and LES instructions.
  • 36. 06/02/14 36 Analysis-segments  It is possible to change default segments used by general and index registers by prefixing instructions with a CS, SS, DS or ES prefix.  All general registers of the 8086 microprocessor can be used for arithmetic and logic operations.
  • 37. 06/02/14 37 General Registers  Accumulator register consists of 2 8-bit registers AL and AH, which can be combined together and used as a 16-bit register AX. AL in this, it case contains the low-order byte of the word, and AH contains the high-order byte.  Accumulator can be used for I/O operations and string manipulation.  Base register consists of 2 8-bit registers BL and BH, which can be combined together and used as a 16-bit register BX. BL in this case contains the low-order byte of the word, and
  • 38. 06/02/14 38 General Registers-cont’n  contains the high-order byte. BX register usually contains a data pointer used for based, based indexed or register indirect addressing.  Count register consists of 2 8-bit registers CL and CH, which can be combined together and used as a 16-bit register CX.  When combined, CL register contains the low-order byte of the word, and CH contains the high-order byte.  Count register can be used as a counter in string manipulation and shift/rotate instructions.
  • 39. 06/02/14 39 General Registers – Cont’n  Data register consists of 2 8-bit registers DL and DH, which can be combined together and used as a 16-bit register DX.  When combined, DL register contains the low-order byte of the word, and DH contains the high-order byte.  Data register can be used as a port number in I/O operations.  In integer 32-bit multiply and divide instruction the DX register contains high-order word of the initial or resulting number.
  • 40. 06/02/14 40 Index Registers  Stack Pointer (SP) is a 16-bit register pointing to program stack.  Base Pointer (BP) is a 16-bit register pointing to data in stack segment. BP register is usually used for based, based indexed or register indirect addressing.  Source Index (SI) is a 16-bit register. SI is used for indexed, based indexed and register indirect addressing, as well as a source data address in string manipulation instructions.  Destination Index (DI) is a 16-bit register. DI is used for indexed, based indexed and register indirect addressing, as well as a destination data address in string manipulation instructions.
  • 41. 06/02/14 41 Other Registers  Instruction Pointer (IP) is a 16-bit register.  Flags is a 16-bit register containing 9 1-bit flags:  Overflow Flag (OF) - set if the result is too large positive number, or is too small negative number to fit into destination operand.  Direction Flag (DF) - if set then string manipulation instructions will auto- decrement index registers. If cleared then the index registers will be auto- incremented.  Interrupt-enable Flag (IF) - setting this bit enables maskable interrupts.  Single-step Flag (TF) - if set then single-step interrupt will occur after the next instruction.  Sign Flag (SF) - set if the most significant bit of the result is set.  Zero Flag (ZF) - set if the result is zero.  Auxiliary carry Flag (AF) - set if there was a carry from or borrow to bits 0-3 in the register.
  • 42. 06/02/14 42  Parity Flag (PF) - set if parity (the number of "1" bits) in the low- order byte of the result is even.  Carry Flag (CF) - set if there was a carry from or borrow to the most significant bit during last result calculation.
  • 43. 06/02/14 43 Instruction Set-8086  8086 instruction set consists of the following instructions:  Data moving instructions.  Arithmetic - add, subtract, increment, decrement, convert byte/word and compare.  Logic - AND, OR, exclusive OR, shift/rotate and test.  String manipulation - load, store, move, compare and scan for byte/word.  Control transfer - conditional, unconditional, call subroutine and return from subroutine.  Input/Output instructions.  Other - setting/clearing flag bits, stack operations, software interrupts, etc.
  • 44. 06/02/14 44 Addressing Mode  Implied - the data value/data address is implicitly associated with the instruction.  Register - references the data in a register or in a register pair.  Immediate - the data is provided in the instruction.  Direct - the instruction operand specifies the memory address where data is located.  Register indirect - instruction specifies a register containing an address, where data is located. This addressing mode works with SI, DI, BX and BP registers.
  • 45. 06/02/14 45 Addressing Mode  Based - 8-bit or 16-bit instruction operand is added to the contents of a base register (BX or BP), the resulting value is a pointer to location where data resides.  Indexed - 8-bit or 16-bit instruction operand is added to the contents of an index register (SI or DI), the resulting value is a pointer to location where data resides.  Based Indexed - the contents of a base register (BX or BP) is added to the contents of an index register (SI or DI), the resulting value is a pointer to location where data resides.  Based Indexed with displacement - 8-bit or 16-bit instruction operand is added to the contents of a base register (BX or BP) and index register (SI or DI), the resulting value is a pointer to location where data resides.