SlideShare a Scribd company logo
1 of 115
Instruction Set
• Prof. Rajesh R.K.
• Assistant Professor,
• Department of MCA
• Mohandas College of Engineering &
Technology, Thiruvananthapuram, Kerala
Instruction
• An instruction is a binary pattern designed
inside a microprocessor to perform a specific
function.
• 8085 has 246 instructions.
• Each instruction is represented by an 8-bit
binary value.
1. Introduction
• A microprocessor executes instructions given by the
user
• Instructions should be in a language known to the
microprocessor
• Microprocessor understands the language of 0’s and
1’s only
• This language is called Machine Language
Assembly language program to add two
numbers
MVI A, 2H ;Copy value 2H in register A
MVI B, 4H ;Copy value 4H in register B
ADD B ;A = A + B
Note:
• Assembly language is specific to a given processor
• For e.g. assembly language of 8085 is different than
that of Motorola 6800 microprocessor
Microprocessor understands Machine Language only!
• Microprocessor cannot understand a program
written in Assembly language
• A program known as Assembler is used to convert a
Assembly language program to machine language
Assembly
Language
Program
Assembler
Program
Machine
Language
Code
8085 Instruction Types
8085 Instruction Types
8085 Instruction Types
Classification Of Instruction Set
• There are 5 Types,
• (1) Data Transfer Instruction,
• (2) Arithmetic Instructions,
• (3) Logical Instructions,
• (4) Branching Instructions,
• (5) Control Instructions,
(1) Data Transfer Instructions
• MOV Rd, Rs
• MOV M, Rs
• MOV Rd, M
• This instruction copies the contents of the
source register into the destination register.
• The contents of the source register are not
altered.
• Example: MOV B,A or MOV M,B or MOV C,M
A 20 B 20
A F
B 30 C
D E
H 20 L 50
A 20 B
BEFORE EXECUTION AFTER EXECUTION
MOV B,A
A F
B 30 C
D E
H 20 L 50
A F
B C
D E
H 20 L 50
A F
B C 40
D E
H 20 L 50
MOV M,B
MOV C,M
40 40
30
• MVI R, Data(8-bit)
• MVI M, Data(8-bit)
• The 8-bit immediate data is stored in the
destination register (R) or memory (M), R is
general purpose 8 bit register such as
A,B,C,D,E,H and L.
• Example: MVI B, 60H or MVI M, 40H
(2) Data Transfer Instructions
A F
B C
D E
H L
A F
B 60 C
D E
H L
AFTER EXECUTIONBEFORE EXECUTION
MVI B,60H
40
HL=2050H
2051H
204FH 204FH
HL=2050H
2051H
MVI M,40H
BEFORE EXECUTION AFTER EXECUTION
• LDA 16-bit address
• The contents of a memory location, specified
by a 16-bit address in the operand, are
copied to the accumulator (A).
• The contents of the source are not altered.
• Example: LDA 2000H
(3) Data Transfer Instructions
A
30
A 30
30
AFTER EXECUTIONBEFORE EXECUTION
LDA 2000H
2000H 2000H
(4) Data Transfer Instructions
• LDAX Register Pair
• Load accumulator (A) with the contents of
memory location whose address is specified
by BC or DE or register pair.
• The contents of either the register pair or the
memory location are not altered.
• Example: LDAX D
A F
B C
D 20 E 30
A 80 F
B C
D 20 E 30
80 80
AFTER EXECUTIONBEFORE EXECUTION
LDAX D
2030H 2030H
(5) Data Transfer Instructions
• STA 16-bit address
• The contents of accumulator are copied into
the memory location i.e. address specified by
the operand in the instruction.
• Example: STA 2000 H
A 50 A 50
50
AFTER EXECUTIONBEFORE EXECUTION
STA 2000H2000H 2000H
(6) Data Transfer Instructions
• STAX Register Pair
• Store the contents of accumulator (A) into
the memory location whose address is
specified by BC Or DE register pair.
• Example: STAX B
A 50 F
B 10 C 20
D E
A 50 F
B 10 C 20
D E
50
AFTER EXECUTIONBEFORE EXECUTION
STAX B
1020H 1020H
• LHLD 2050 Means..copy content of 2050 and 2051 to
HL pair
if
2050 -> 90H
2051->5AH
LHLD 2050 implies..
L -> 90H
H -> 5AH
•
LXI means..Load Register Pair with Immediate data.. 16bit data
LXI B ,2050H
Loads BC pair with value 2050H
B-> 20H
C-> 50H
Its similar to 2 MVI instruction
ie
MVI B,20H
MVI C,50H
(7) Data Transfer Instructions
• SHLD 16-bit address
• Store H-L register pair in memory.
• The contents of register L are stored into
memory location specified by the 16-bit
address.
• The contents of register H are stored into the
next memory location.
• Example: SHLD 2500 H
H 30 L 60
BEFORE EXECUTION AFTER EXECUTION
60
30
H 30 L 60
SHLD 2500H2500H 2500H
204FH
2502H
204FH
2502H
(8) Data Transfer Instructions
• XCHG
• The contents of register H are exchanged
with the contents of register D.
• The contents of register L are exchanged with
the contents of register E.
• Example: XCHG
D 20 E 40
H 70 L 80
D 70 E 80
H 20 L 40
BEFORE EXECUTION AFTER EXECUTION
XCHG
(9) Data Transfer Instructions
• SPHL
• Move data from H-L pair to the Stack Pointer
(SP)
• This instruction loads the contents of H-L pair
into SP.
• Example: SPHL
H 25 L 00
SP
BEFORE EXECUTION
AFTER EXECUTION
H 25 L 00
SP 2500
SPHL
(10) Data Transfer Instructions
• XTHL
• Exchange H–L with top of stack
• The contents of L register are exchanged with
the location pointed out by the contents of
the SP.
• The contents of H register are exchanged
with the next location (SP + 1).
• Example: XTHL
H
30
L
40
SP 2700
BEFORE EXECUTION
50
60
H
60
L
50
SP 2700 40
30
AFTER EXECUTION
XTHL
2700H
2701H
2702H
2700H
2701H
2702H
L=SP
H=(SP+1)
(11) Data Transfer Instructions
• PCHL
• Load program counter with H-L contents
• The contents of registers H and L are copied into
the program counter (PC).
• The contents of H are placed as the high-order
byte and the contents of L as the low-order
byte.
•
H
60
L
00
PC
BEFORE EXECUTION AFTER EXECUTION
H
60
L
00
PC 6000
PCHL
(12) Data Transfer Instructions
• IN 8-bit port address
• Copy data to accumulator from a port with 8-
bit address.
• The contents of I/O port are copied into
accumulator.
• Example: IN 80 H
10 A
10 A 10
BEFORE EXECUTION
AFTER EXECUTION
IN 80H
PORT 80H
PORT 80H
(13) Data Transfer Instructions
• OUT 8-bit port address
• Copy data from accumulator to a port with 8-
bit address
• The contents of accumulator are copied into
the I/O port.
• Example: OUT 50 H
10 A 40
40 A 40
BEFORE EXECUTION
AFTER EXECUTION
OUT 50H
PORT 50H
PORT 50H
Arithmetic Instructions
• These instructions perform the operations
like:
• Addition
• Subtraction
• Increment
• Decrement
(1) Arithematic Instructions
• ADD R
• ADD M
• The contents of register or memory are added
to the contents of accumulator.
• The result is stored in accumulator.
• If the operand is memory location, its address is
specified by H-L pair.
• Example: ADD C or ADD M
B C 30
D E
H L
B C 30
D E
H L
AFTER EXECUTIONBEFORE EXECUTION
B C
D E
H 20 L 50
B C
D E
H 20 L 50
AFTER EXECUTIONBEFORE EXECUTION
A 20
A 50A 20
A 30
ADD C
A=A+R
ADD M
A=A+M
10 10
2050 2050
(2) Arithematic Instructions
• ADC R
• ADC M
• The contents of register or memory and Carry Flag
(CY) are added to the contents of accumulator.
• The result is stored in accumulator.
• If the operand is memory location, its address is
specified by H-L pair. All flags are modified to reflect
the result of the addition.
• Example: ADC C or ADC M
B C 20
D E
H L
A 50
B C 20
D E
H L
A 71
AFTER EXECUTIONBEFORE EXECUTION
ADC C
A=A+R+CY
CY 1 CY 0
CY 1 CY 0
A 20 A 51
H 20 L 50 H 20 L 50
ADC M
A=A+M+CY
AFTER EXECUTIONBEFORE EXECUTION
30 302050H 2050H
(3) Arithematic Instructions
• ADI 8-bit data
• The 8-bit data is added to the contents of
accumulator.
• The result is stored in accumulator.
• Example: ADI 10 H
A 50 A 60
AFTER EXECUTIONBEFORE EXECUTION
ADI 10H
A=A+DATA(8)
(4) Arithematic Instructions
• ACI 8-bit data
• The 8-bit data and the Carry Flag (CY) are
added to the contents of accumulator.
• The result is stored in accumulator.
• Example: ACI 20 H
CY 1 CY 0
A 30 A 51
AFTER EXECUTIONBEFORE EXECUTION
ACI 20H
A=A+DATA
(8)+CY
(5) Arithematic Instructions
• DAD Register pair
• The 16-bit contents of the register pair are
added to the contents of H-L pair.
• The result is stored in H-L pair.
• If the result is larger than 16 bits, then CY is
set.
• Example: DAD D
AFTER EXECUTIONBEFORE EXECUTION
B C
D 10 E 20
H 20 L 50
SP
B C
D 10 E 20
H 30 L 70
SP
CY 0 CY 0
DAD D
HL=HL+R
(6) Arithematic Instructions
• SUB R
• SUB M
• The contents of the register or memory location are
subtracted from the contents of the accumulator.
• The result is stored in accumulator.
• If the operand is memory location, its address is
specified by H-L pair.
• Example: SUB B or SUB M
B 30 C
D E
H L
A 50
B 30 C
D E
H L
A 20
AFTER EXECUTIONBEFORE EXECUTION
SUB B
A=A-R
AFTER EXECUTIONBEFORE EXECUTION
A 50 A 40
H
10
L
20
H
10
L
20
SUB M
A=A-M
10 10
1020H1020H
(7) Arithematic Instructions
• SBB R
• SBB M
• The contents of the register or memory location and
Borrow Flag (i.e.CY) are subtracted from the contents of
the accumulator.
• The result is stored in accumulator.
• If the operand is memory location, its address is specified
by H-L pair.
• Example: SBB C or SBB M
B C 20
D E
H L
A 40
CY 1
B C 20
D E
H L
A 19
CY 0
SBB C
A=A-R-CY
AFTER EXECUTIONBEFORE EXECUTION
CY 1
A 50
H
20
L
50
CY 0
A 39
H
20
L
50
AFTER EXECUTIONBEFORE EXECUTION
SBB M
A=A-M-CY
10 10
2050H 2050H
(8) Arithematic Instructions
• SUI 8-bit data
• OPERATION: A=A-DATA(8)
• The 8-bit immediate data is subtracted from
the contents of the accumulator.
• The result is stored in accumulator.
• Example: SUI 45 H
(9) Arithematic Instructions
• SBI 8-bit data
• The 8-bit data and the Borrow Flag (i.e. CY) is
subtracted from the contents of the
accumulator.
• The result is stored in accumulator.
• Example: SBI 20 H
CY 1
A 50
AFTER EXECUTIONBEFORE EXECUTION
CY 0
A 29SBI 20H
A=A-DATA(8)-CY
(10) Arithematic Instructions
• INR R
• INR M
• The contents of register or memory location are
incremented by 1.
• The result is stored in the same place.
• If the operand is a memory location, its address
is specified by the contents of H-L pair.
• Example: INR B or INR M
B 10 C
D E
H L
A
B 11 C
D E
H L
A
AFTER EXECUTIONBEFORE EXECUTION
H
20
L
50
H
20
L
50
30 31
2050H 2050H
AFTER EXECUTIONBEFORE EXECUTION
INR M
M=M+1
B 10 C
D E
H L
A
BEFORE EXECUTION
INR B
R=R+1
(11) Arithematic Instructions
• INX Rp
• The contents of register pair are incremented
by 1.
• The result is stored in the same place.
• Example: INX H
B C
D E
H 10 L 20
B C
D E
H 11 L 21
AFTER EXECUTIONBEFORE EXECUTION
SPSP
INX H
RP=RP+1
(12) Arithematic Instructions
• DCR R
• DCR M
• The contents of register or memory location are
decremented by 1.
• The result is stored in the same place.
• If the operand is a memory location, its address
is specified by the contents of H-L pair.
• Example: DCR E or DCR M
B C
D E 19
H L
A
AFTER EXECUTION
B C
D E 20
H L
A
BEFORE EXECUTION
DCR E
R=R-1
H
20
L
50
H
20
L
5021 20
2050H
AFTER EXECUTIONBEFORE EXECUTION
DCR M
M=M-1
2050H
(13) Arithematic Instructions
• DCX Rp
• The contents of register pair are decremented
by 1.
• The result is stored in the same place.
• Example: DCX D
B C
D 10 E 20
H L
B C
D 10 E 19
H L
AFTER EXECUTIONBEFORE EXECUTION
SPSP
DCX D
RP=RP-1
(1) Logical Instructions
• ANA R
• ANA M
• AND specified data in register or memory with
accumulator.
• Store the result in accumulator (A).
• Example: ANA B, ANA M
B 10 C
D E
H L
A
B 0F C
D E
H L
A 0A
AFTER EXECUTION
ANA B
A=A and R
B 0F C
D E
H L
A AA
BEFORE EXECUTION
CY AC CY 0 AC 1
AFTER EXECUTIONBEFORE EXECUTION
CY AC CY 0 AC 1
A 11A 55
H 20 L 50 H 20 L 50
B3 B3
2050H
ANA M
A=A and M
2050H
1010 1010=AAH
0000 1111=0FH
0000 1010=0AH
0101 0101=55H
1011 0011=B3H
0001 0001=11H
(2) Logical Instructions
• ANI 8-bit data
• AND 8-bit data with accumulator (A).
• Store the result in accumulator (A)
• Example: ANI 3FH
CY AC
A B3
AFTER EXECUTIONBEFORE EXECUTION
CY 0 AC 1
A 33
ANI 3FH
A=A and DATA(8)
1011 0011=B3H
0011 1111=3FH
0011 0011=33H
(3) Logical Instructions
• XRA Register (8-bit)
• XOR specified register with accumulator.
• Store the result in accumulator.
• Example: XRA C
B 10 C
D E
H L
A
B C 2D
D E
H L
A 87
AFTER EXECUTION
XRA C
A=A xor R
B C 2D
D E
H L
A AA
BEFORE EXECUTION
CY AC CY 0 AC 0
1010 1010=AAH
0010 1101=2DH
1000 0111=87H
(4) Logical Instructions
• XRA M
• XOR data in memory (memory location
pointed by H-L pair) with Accumulator.
• Store the result in Accumulator.
• Example: XRA M
H 20 L 50
A 55
AFTER EXECUTION
XRA M
A=A xor M
BEFORE EXECUTION
CY AC CY 0 AC 0
0101 0101=55H
1011 0011=B3H
1110 0110=E6H
H 20 L 50
A E6
B3 B3
2050H 2050H
(5) Logical Instructions
• XRI 8-bit data
• XOR 8-bit immediate data with accumulator (A).
• Store the result in accumulator.
• Example: XRI 39H
CY AC
A B3
AFTER EXECUTIONBEFORE EXECUTION
CY 0 AC 0
A 8A
XRI 39H
A=A xor DATA(8)
1011 0011=B3H
0011 1001=39H
1000 1010=8AH
(6) Logical Instructions
• ORA Register
• OR specified register with accumulator (A).
• Store the result in accumulator.
• Example: ORA B
AFTER EXECUTIONBEFORE EXECUTION
CY AC
ORA B
A=A or R
1010 1010=AAH
0001 0010=12H
1011 1010=BAH
B 12 C
D E
H L
A AA
B 12 C
D E
H L
A BA
CY 0 AC 0
(7) Logical Instructions
• ORA M
• OR specified register with accumulator (A).
• Store the result in accumulator.
• Example: ORA M
AFTER EXECUTIONBEFORE EXECUTION
CY AC
ORA M
A=A or M
0101 0101=55H
1011 0011=B3H
1111 0111=F7H
H 20 L 50
A 55 A F7
CY 0 AC 0
H 20 L 50
B3 B3
2050H 2050H
(8) Logical Instructions
• ORI 8-bit data
• OR 8-bit data with accumulator (A).
• Store the result in accumulator.
• Example: ORI 08H
CY AC
A B3
AFTER EXECUTIONBEFORE EXECUTION
CY 0 AC 0
A BB
ORI 08H
A=A or DATA(8)
1011 0011=B3H
0000 1000=08H
1011 1011=BBH
(9) Logical Instructions
• CMP Register
• CMP M
• Compare specified data in register or memory
with accumulator (A).
• Store the result in accumulator.
• Example: CMP D or CMP M
B 10 C
D E
H L
A
B C
D B9 E
H L
A B8
AFTER EXECUTION
CMP D
A-R
B C
D B9 E
H L
A B8
BEFORE EXECUTION
CY Z CY 0 Z 0
AFTER EXECUTIONBEFORE EXECUTION
CY Z CY 0 Z 1
A B8A B8
H 20 L 50 H 20 L 50
B8 B8
2050H
CMP M
A-M
2050H
A>R: CY=0,Z=0
A=R: CY=0,Z=1
A<R: CY=1,Z=0
A>M: CY=0,Z=0
A=M: CY=0,Z=1
A<M: CY=1,Z=0
(10) Logical Instructions
• CPI 8-bit data
• Compare 8-bit immediate data with
accumulator (A).
• Store the result in accumulator.
• Example: CPI 30H
CY Z
A BA
AFTER EXECUTIONBEFORE EXECUTION
CY 0 AC 0
A BA
CPI 30H
A-DATA
A>DATA: CY=0,Z=0
A=DATA: CY=0,Z=1
A<DATA: CY=1,Z=0
1011 1010=BAH
(11) Logical Instructions
• STC
• It sets the carry flag to 1.
• Example: STC
CY 0
AFTER EXECUTIONBEFORE EXECUTION
CY 1
STC
CY=1
(12) Logical Instructions
• CMC
• It complements the carry flag.
• Example: CMC
CY 1
AFTER EXECUTIONBEFORE EXECUTION
CY 0
CMC
(13) Logical Instructions
• CMA
• It complements each bit of the accumulator.
• Example: CMA
(14) Logical Instructions
• RLC
• Rotate accumulator left
• Each binary bit of the accumulator is rotated left
by one position.
• Bit D7 is placed in the position of D0 as well as
in the Carry flag.
• CY is modified according to bit D7.
• Example: RLC.
B7 B6 B5 B4 B3 B2 B1 B0CY
B6 B5 B4 B3 B2 B1 B0 B7B7
AFTER EXECUTION
BEFORE EXECUTION
(15) Logical Instructions
• RRC
• Rotate accumulator right
• Each binary bit of the accumulator is rotated right by
one
• position.
• Bit D0 is placed in the position of D7 as well as in the
Carry flag.
• CY is modified according to bit D0.
• Example: RRC.
B7 B6 B5 B4 B3 B2 B1 B0 CY
B0 B7 B6 B5 B4 B3 B2 B1 B0
AFTER EXECUTION
BEFORE EXECUTION
(16) Logical Instructions
• RAL
• Rotate accumulator left through carry
• Each binary bit of the accumulator is rotated left
by one position through the Carry flag.
• Bit D7 is placed in the Carry flag, and the Carry
flag is placed in the least significant position D0.
• CY is modified according to bit D7.
• Example: RAL.
B7 B6 B5 B4 B3 B2 B1 B0CY
B6 B5 B4 B3 B2 B1 B0 CYB7
AFTER EXECUTION
BEFORE EXECUTION
(17) Logical Instructions
• RAR
• Rotate accumulator right through carry
• Each binary bit of the accumulator is rotated left
by one position through the Carry flag.
• Bit D7 is placed in the Carry flag, and the Carry
flag is placed in the least significant position D0.
• CY is modified according to bit D7.
• Example: RAR
B7 B6 B5 B4 B3 B2 B1 B0 CY
CY B7 B6 B5 B4 B3 B2 B1 B0
AFTER EXECUTION
BEFORE EXECUTION
Concept of Subroutine
• In 8085 microprocessor a subroutine is a
separate program written aside from main
program ,this program is basically the
program which requires to be executed
several times in the main program.
• The microprocessor can call subroutine any
time using CALL instruction. after the
subroutine is executed the subroutine hands
over the program to main program using RET
instruction.
Branching Instructions
• The branch group instructions allows the
microprocessor to change the sequence of
program either conditionally or under certain
test conditions. The group includes,
• (1) Jump instructions,
• (2) Call and Return instructions,
• (3) Restart instructions,
(1) Branching Instructions
• JUMP ADDRESS
• BEFORE EXECUTION AFTER EXECUTION
• Jump unconditionally to the address.
• The instruction loads the PC with the address
given within the instruction and resumes the
program execution from specified location.
• Example: JMP 200H
PC PC 2000JMP 2000H
Conditional Jumps
(2) Branching Instructions
• CALL address
• Call unconditionally a subroutine whose
starting address given within the
instruction and used to transfer
program control to a subprogram or
subroutine.
• Example: CALL 2000H
Conditional Calls
Instruction Code Description Condition for CALL
CC Call on carry CY=1
CNC Call on not carry CY=0
CP Call on positive S=0
CM Call on minus S=1
CPE Call on parity even P=1
CPO Call on parity odd P=0
CZ Call on zero Z=1
CNZ Call on not zero Z=0
(3) Branching Instructions
• RET
• Return from the subroutine unconditionally.
• This instruction takes return address from
the stack and loads the program counter
with this address.
• Example: RET
SP 27FD
PC
00
62
SP 27FF
PC 6200
00
62
AFTER EXECUTIONBEFORE EXECUTION
RET
27FFH
27FEH
27FDH
27FFH
27FEH
27FDH
(4) Branching Instructions
• RST n
• Restart n (0 to 7)
• This instruction transfers the program
control to a specific memory address. The
processor multiplies the RST number by 8 to
calculate the vector address.
• Example: RST 6
SP 3000
PC 2000
SP 2999
PC 0030
01
20
AFTER EXECUTIONBEFORE EXECUTION
RST 6
3000H
2FFFH
2FFEH
SP-1
ADDRESS OF THE NEXT INSTRUCTION IS 2001H
3000H
2FFFH
2FFEH
Vector Address For Return
Instructions
Instruction Code Vector Address
RST 0 0*8=0000H
RST 1 0*8=0008H
RST 2 0*8=0010H
RST 3 0*8=0018H
RST 4 0*8=0020H
RST 5 0*8=0028H
RST 6 0*8=0030H
Rst 7 0*8=0038H
(1) Control Instructions
• NOP
• No operation
• No operation is performed.
• The instruction is fetched and decoded but no
operation is executed.
• Example: NOP
(2) Control Instructions
• HLT
• Halt
• The CPU finishes executing the current
instruction and halts any further execution.
• An interrupt or reset is necessary to exit from
the halt state.
• Example: HLT
(3) Control Instructions
• RIM
• Read Interrupt Mask
• This is a multipurpose instruction used to read the
status of interrupts 7.5, 6.5, 5.5 and read serial data
input bit.
• The instruction loads eight bits in the accumulator
with the following interpretations.
• Example: RIM
RIM INSTRUCTIONRIM INSTRUCTION
• SIM
• Set Interrupt Mask
• This is a multipurpose instruction and used to
implement the 8085 interrupts 7.5, 6.5, 5.5, and
serial data output.
• The instruction interprets the accumulator
contents as follows.
• Example: SIM
SIM Instruction
END OF
INSTRUCTION SET
Instruction set  of 8085

More Related Content

What's hot

8085 data transfer instruction set
8085 data transfer instruction set8085 data transfer instruction set
8085 data transfer instruction setprashant1271
 
8051 Assembly Language Programming
8051 Assembly Language Programming8051 Assembly Language Programming
8051 Assembly Language ProgrammingRavikumar Tiwari
 
8085 instructions and addressing modes
8085 instructions and addressing modes8085 instructions and addressing modes
8085 instructions and addressing modesSuchismita Paul
 
Counters &amp; time delay
Counters &amp; time delayCounters &amp; time delay
Counters &amp; time delayHemant Chetwani
 
8051 instruction set
8051 instruction set8051 instruction set
8051 instruction setprakash y
 
Assembly level language
Assembly level languageAssembly level language
Assembly level languagePDFSHARE
 
Logic, shift and rotate instruction
Logic, shift and rotate instructionLogic, shift and rotate instruction
Logic, shift and rotate instructionkashif Shafqat
 
Logical instruction of 8085
Logical instruction of 8085Logical instruction of 8085
Logical instruction of 8085vishalgohel12195
 
Introduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorIntroduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorRavi Anand
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkarSAQUIB AHMAD
 
Arithmetic & logical operations in 8051
Arithmetic & logical operations in 8051Arithmetic & logical operations in 8051
Arithmetic & logical operations in 8051Jay Patel
 
General register organization (computer organization)
General register organization  (computer organization)General register organization  (computer organization)
General register organization (computer organization)rishi ram khanal
 

What's hot (20)

Addressing modes
Addressing modesAddressing modes
Addressing modes
 
8085 data transfer instruction set
8085 data transfer instruction set8085 data transfer instruction set
8085 data transfer instruction set
 
8051 Assembly Language Programming
8051 Assembly Language Programming8051 Assembly Language Programming
8051 Assembly Language Programming
 
8085 instructions and addressing modes
8085 instructions and addressing modes8085 instructions and addressing modes
8085 instructions and addressing modes
 
Counters &amp; time delay
Counters &amp; time delayCounters &amp; time delay
Counters &amp; time delay
 
8086 micro processor
8086 micro processor8086 micro processor
8086 micro processor
 
8051 instruction set
8051 instruction set8051 instruction set
8051 instruction set
 
Programming with 8085
Programming with 8085Programming with 8085
Programming with 8085
 
Instruction format
Instruction formatInstruction format
Instruction format
 
Assembly level language
Assembly level languageAssembly level language
Assembly level language
 
8051 instruction set
8051 instruction set8051 instruction set
8051 instruction set
 
Logic, shift and rotate instruction
Logic, shift and rotate instructionLogic, shift and rotate instruction
Logic, shift and rotate instruction
 
Logical instruction of 8085
Logical instruction of 8085Logical instruction of 8085
Logical instruction of 8085
 
Introduction to 8085 Microprocessor
Introduction to 8085 MicroprocessorIntroduction to 8085 Microprocessor
Introduction to 8085 Microprocessor
 
8085 microprocessor ramesh gaonkar
8085 microprocessor   ramesh gaonkar8085 microprocessor   ramesh gaonkar
8085 microprocessor ramesh gaonkar
 
Microprocessor 8086
Microprocessor 8086Microprocessor 8086
Microprocessor 8086
 
Architecture of 8085
Architecture of  8085Architecture of  8085
Architecture of 8085
 
Arithmetic & logical operations in 8051
Arithmetic & logical operations in 8051Arithmetic & logical operations in 8051
Arithmetic & logical operations in 8051
 
Interfacing 8255
Interfacing 8255Interfacing 8255
Interfacing 8255
 
General register organization (computer organization)
General register organization  (computer organization)General register organization  (computer organization)
General register organization (computer organization)
 

Similar to Instruction set of 8085

8085 instruction set (detailed)
8085 instruction set (detailed)8085 instruction set (detailed)
8085 instruction set (detailed)Ravi Anand
 
Instruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil KawareInstruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil KawareProf. Swapnil V. Kaware
 
Instruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil KawareInstruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil KawareProf. Swapnil V. Kaware
 
Instructionsetof8085 120415220437-phpapp02
Instructionsetof8085 120415220437-phpapp02Instructionsetof8085 120415220437-phpapp02
Instructionsetof8085 120415220437-phpapp02Satsang Yadav
 
8085 instruction set
8085 instruction set8085 instruction set
8085 instruction setJLoknathDora
 
INTEL 8085 DATA FORMAT AND INSTRUCTIONS
INTEL 8085 DATA FORMAT AND INSTRUCTIONSINTEL 8085 DATA FORMAT AND INSTRUCTIONS
INTEL 8085 DATA FORMAT AND INSTRUCTIONSSwapnil Mishra
 
Chapter 3 instruction set-of-8085
Chapter 3 instruction set-of-8085Chapter 3 instruction set-of-8085
Chapter 3 instruction set-of-8085Shubham Singh
 
Microprocessor Part 3
Microprocessor    Part  3Microprocessor    Part  3
Microprocessor Part 3Sajan Agrawal
 
8085_Microprocessor(simar).ppt
8085_Microprocessor(simar).ppt8085_Microprocessor(simar).ppt
8085_Microprocessor(simar).pptKanikaJindal9
 
microp-8085 74 instructions for mct-A :P
microp-8085 74 instructions for mct-A :Pmicrop-8085 74 instructions for mct-A :P
microp-8085 74 instructions for mct-A :PJathin Kanumuri
 
8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set
8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set
8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction setSaumitra Rukmangad
 
microp-8085 74 instructions for mct-A :P-2
microp-8085 74 instructions for mct-A :P-2microp-8085 74 instructions for mct-A :P-2
microp-8085 74 instructions for mct-A :P-2Jathin Kanumuri
 
itft-Instruction set-of-8085
itft-Instruction set-of-8085itft-Instruction set-of-8085
itft-Instruction set-of-8085Shifali Sharma
 
Chapter 7 - Programming Techniques with Additional Instructions
Chapter 7 - Programming Techniques with Additional InstructionsChapter 7 - Programming Techniques with Additional Instructions
Chapter 7 - Programming Techniques with Additional Instructionscmkandemir
 
instruction-set-of-8085 (1).ppt
instruction-set-of-8085 (1).pptinstruction-set-of-8085 (1).ppt
instruction-set-of-8085 (1).pptssuserb448e2
 
Instruction set-of-8085
Instruction set-of-8085Instruction set-of-8085
Instruction set-of-8085saleForce
 
Microcontroller 8051- soft.ppt
Microcontroller 8051- soft.pptMicrocontroller 8051- soft.ppt
Microcontroller 8051- soft.pptsteffydean
 

Similar to Instruction set of 8085 (20)

8085 instruction set (detailed)
8085 instruction set (detailed)8085 instruction set (detailed)
8085 instruction set (detailed)
 
Instruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil KawareInstruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil Kaware
 
Instruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil KawareInstruction set of 8085 Microprocessor By Er. Swapnil Kaware
Instruction set of 8085 Microprocessor By Er. Swapnil Kaware
 
Instructionsetof8085 120415220437-phpapp02
Instructionsetof8085 120415220437-phpapp02Instructionsetof8085 120415220437-phpapp02
Instructionsetof8085 120415220437-phpapp02
 
UNIT II.pptx
UNIT II.pptxUNIT II.pptx
UNIT II.pptx
 
8085 instruction set
8085 instruction set8085 instruction set
8085 instruction set
 
INTEL 8085 DATA FORMAT AND INSTRUCTIONS
INTEL 8085 DATA FORMAT AND INSTRUCTIONSINTEL 8085 DATA FORMAT AND INSTRUCTIONS
INTEL 8085 DATA FORMAT AND INSTRUCTIONS
 
Chapter 3 instruction set-of-8085
Chapter 3 instruction set-of-8085Chapter 3 instruction set-of-8085
Chapter 3 instruction set-of-8085
 
Microprocessor Part 3
Microprocessor    Part  3Microprocessor    Part  3
Microprocessor Part 3
 
8085_Microprocessor(simar).ppt
8085_Microprocessor(simar).ppt8085_Microprocessor(simar).ppt
8085_Microprocessor(simar).ppt
 
microp-8085 74 instructions for mct-A :P
microp-8085 74 instructions for mct-A :Pmicrop-8085 74 instructions for mct-A :P
microp-8085 74 instructions for mct-A :P
 
8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set
8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set
8085 Paper Presentation slides,ppt,microprocessor 8085 ,guide, instruction set
 
microp-8085 74 instructions for mct-A :P-2
microp-8085 74 instructions for mct-A :P-2microp-8085 74 instructions for mct-A :P-2
microp-8085 74 instructions for mct-A :P-2
 
itft-Instruction set-of-8085
itft-Instruction set-of-8085itft-Instruction set-of-8085
itft-Instruction set-of-8085
 
Chapter 7 - Programming Techniques with Additional Instructions
Chapter 7 - Programming Techniques with Additional InstructionsChapter 7 - Programming Techniques with Additional Instructions
Chapter 7 - Programming Techniques with Additional Instructions
 
8085 Instructions.pdf
8085 Instructions.pdf8085 Instructions.pdf
8085 Instructions.pdf
 
instruction-set-of-8085 (1).ppt
instruction-set-of-8085 (1).pptinstruction-set-of-8085 (1).ppt
instruction-set-of-8085 (1).ppt
 
Instruction set-of-8085
Instruction set-of-8085Instruction set-of-8085
Instruction set-of-8085
 
Microcontroller 8051- soft.ppt
Microcontroller 8051- soft.pptMicrocontroller 8051- soft.ppt
Microcontroller 8051- soft.ppt
 
Instruction set
Instruction setInstruction set
Instruction set
 

Recently uploaded

General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfDr Vijay Vishwakarma
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 

Recently uploaded (20)

General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 

Instruction set of 8085

  • 1. Instruction Set • Prof. Rajesh R.K. • Assistant Professor, • Department of MCA • Mohandas College of Engineering & Technology, Thiruvananthapuram, Kerala
  • 2. Instruction • An instruction is a binary pattern designed inside a microprocessor to perform a specific function. • 8085 has 246 instructions. • Each instruction is represented by an 8-bit binary value.
  • 3. 1. Introduction • A microprocessor executes instructions given by the user • Instructions should be in a language known to the microprocessor • Microprocessor understands the language of 0’s and 1’s only • This language is called Machine Language
  • 4. Assembly language program to add two numbers MVI A, 2H ;Copy value 2H in register A MVI B, 4H ;Copy value 4H in register B ADD B ;A = A + B Note: • Assembly language is specific to a given processor • For e.g. assembly language of 8085 is different than that of Motorola 6800 microprocessor
  • 5. Microprocessor understands Machine Language only! • Microprocessor cannot understand a program written in Assembly language • A program known as Assembler is used to convert a Assembly language program to machine language Assembly Language Program Assembler Program Machine Language Code
  • 9. Classification Of Instruction Set • There are 5 Types, • (1) Data Transfer Instruction, • (2) Arithmetic Instructions, • (3) Logical Instructions, • (4) Branching Instructions, • (5) Control Instructions,
  • 10. (1) Data Transfer Instructions • MOV Rd, Rs • MOV M, Rs • MOV Rd, M • This instruction copies the contents of the source register into the destination register. • The contents of the source register are not altered. • Example: MOV B,A or MOV M,B or MOV C,M
  • 11. A 20 B 20 A F B 30 C D E H 20 L 50 A 20 B BEFORE EXECUTION AFTER EXECUTION MOV B,A A F B 30 C D E H 20 L 50 A F B C D E H 20 L 50 A F B C 40 D E H 20 L 50 MOV M,B MOV C,M 40 40 30
  • 12. • MVI R, Data(8-bit) • MVI M, Data(8-bit) • The 8-bit immediate data is stored in the destination register (R) or memory (M), R is general purpose 8 bit register such as A,B,C,D,E,H and L. • Example: MVI B, 60H or MVI M, 40H (2) Data Transfer Instructions
  • 13. A F B C D E H L A F B 60 C D E H L AFTER EXECUTIONBEFORE EXECUTION MVI B,60H 40 HL=2050H 2051H 204FH 204FH HL=2050H 2051H MVI M,40H BEFORE EXECUTION AFTER EXECUTION
  • 14. • LDA 16-bit address • The contents of a memory location, specified by a 16-bit address in the operand, are copied to the accumulator (A). • The contents of the source are not altered. • Example: LDA 2000H (3) Data Transfer Instructions
  • 15. A 30 A 30 30 AFTER EXECUTIONBEFORE EXECUTION LDA 2000H 2000H 2000H
  • 16. (4) Data Transfer Instructions • LDAX Register Pair • Load accumulator (A) with the contents of memory location whose address is specified by BC or DE or register pair. • The contents of either the register pair or the memory location are not altered. • Example: LDAX D
  • 17. A F B C D 20 E 30 A 80 F B C D 20 E 30 80 80 AFTER EXECUTIONBEFORE EXECUTION LDAX D 2030H 2030H
  • 18. (5) Data Transfer Instructions • STA 16-bit address • The contents of accumulator are copied into the memory location i.e. address specified by the operand in the instruction. • Example: STA 2000 H
  • 19. A 50 A 50 50 AFTER EXECUTIONBEFORE EXECUTION STA 2000H2000H 2000H
  • 20. (6) Data Transfer Instructions • STAX Register Pair • Store the contents of accumulator (A) into the memory location whose address is specified by BC Or DE register pair. • Example: STAX B
  • 21. A 50 F B 10 C 20 D E A 50 F B 10 C 20 D E 50 AFTER EXECUTIONBEFORE EXECUTION STAX B 1020H 1020H
  • 22. • LHLD 2050 Means..copy content of 2050 and 2051 to HL pair if 2050 -> 90H 2051->5AH LHLD 2050 implies.. L -> 90H H -> 5AH
  • 23. • LXI means..Load Register Pair with Immediate data.. 16bit data LXI B ,2050H Loads BC pair with value 2050H B-> 20H C-> 50H Its similar to 2 MVI instruction ie MVI B,20H MVI C,50H
  • 24. (7) Data Transfer Instructions • SHLD 16-bit address • Store H-L register pair in memory. • The contents of register L are stored into memory location specified by the 16-bit address. • The contents of register H are stored into the next memory location. • Example: SHLD 2500 H
  • 25. H 30 L 60 BEFORE EXECUTION AFTER EXECUTION 60 30 H 30 L 60 SHLD 2500H2500H 2500H 204FH 2502H 204FH 2502H
  • 26. (8) Data Transfer Instructions • XCHG • The contents of register H are exchanged with the contents of register D. • The contents of register L are exchanged with the contents of register E. • Example: XCHG
  • 27. D 20 E 40 H 70 L 80 D 70 E 80 H 20 L 40 BEFORE EXECUTION AFTER EXECUTION XCHG
  • 28. (9) Data Transfer Instructions • SPHL • Move data from H-L pair to the Stack Pointer (SP) • This instruction loads the contents of H-L pair into SP. • Example: SPHL
  • 29. H 25 L 00 SP BEFORE EXECUTION AFTER EXECUTION H 25 L 00 SP 2500 SPHL
  • 30. (10) Data Transfer Instructions • XTHL • Exchange H–L with top of stack • The contents of L register are exchanged with the location pointed out by the contents of the SP. • The contents of H register are exchanged with the next location (SP + 1). • Example: XTHL
  • 31. H 30 L 40 SP 2700 BEFORE EXECUTION 50 60 H 60 L 50 SP 2700 40 30 AFTER EXECUTION XTHL 2700H 2701H 2702H 2700H 2701H 2702H L=SP H=(SP+1)
  • 32. (11) Data Transfer Instructions • PCHL • Load program counter with H-L contents • The contents of registers H and L are copied into the program counter (PC). • The contents of H are placed as the high-order byte and the contents of L as the low-order byte. •
  • 33. H 60 L 00 PC BEFORE EXECUTION AFTER EXECUTION H 60 L 00 PC 6000 PCHL
  • 34. (12) Data Transfer Instructions • IN 8-bit port address • Copy data to accumulator from a port with 8- bit address. • The contents of I/O port are copied into accumulator. • Example: IN 80 H
  • 35. 10 A 10 A 10 BEFORE EXECUTION AFTER EXECUTION IN 80H PORT 80H PORT 80H
  • 36. (13) Data Transfer Instructions • OUT 8-bit port address • Copy data from accumulator to a port with 8- bit address • The contents of accumulator are copied into the I/O port. • Example: OUT 50 H
  • 37. 10 A 40 40 A 40 BEFORE EXECUTION AFTER EXECUTION OUT 50H PORT 50H PORT 50H
  • 38. Arithmetic Instructions • These instructions perform the operations like: • Addition • Subtraction • Increment • Decrement
  • 39. (1) Arithematic Instructions • ADD R • ADD M • The contents of register or memory are added to the contents of accumulator. • The result is stored in accumulator. • If the operand is memory location, its address is specified by H-L pair. • Example: ADD C or ADD M
  • 40. B C 30 D E H L B C 30 D E H L AFTER EXECUTIONBEFORE EXECUTION B C D E H 20 L 50 B C D E H 20 L 50 AFTER EXECUTIONBEFORE EXECUTION A 20 A 50A 20 A 30 ADD C A=A+R ADD M A=A+M 10 10 2050 2050
  • 41. (2) Arithematic Instructions • ADC R • ADC M • The contents of register or memory and Carry Flag (CY) are added to the contents of accumulator. • The result is stored in accumulator. • If the operand is memory location, its address is specified by H-L pair. All flags are modified to reflect the result of the addition. • Example: ADC C or ADC M
  • 42. B C 20 D E H L A 50 B C 20 D E H L A 71 AFTER EXECUTIONBEFORE EXECUTION ADC C A=A+R+CY CY 1 CY 0 CY 1 CY 0 A 20 A 51 H 20 L 50 H 20 L 50 ADC M A=A+M+CY AFTER EXECUTIONBEFORE EXECUTION 30 302050H 2050H
  • 43. (3) Arithematic Instructions • ADI 8-bit data • The 8-bit data is added to the contents of accumulator. • The result is stored in accumulator. • Example: ADI 10 H
  • 44. A 50 A 60 AFTER EXECUTIONBEFORE EXECUTION ADI 10H A=A+DATA(8)
  • 45. (4) Arithematic Instructions • ACI 8-bit data • The 8-bit data and the Carry Flag (CY) are added to the contents of accumulator. • The result is stored in accumulator. • Example: ACI 20 H
  • 46. CY 1 CY 0 A 30 A 51 AFTER EXECUTIONBEFORE EXECUTION ACI 20H A=A+DATA (8)+CY
  • 47. (5) Arithematic Instructions • DAD Register pair • The 16-bit contents of the register pair are added to the contents of H-L pair. • The result is stored in H-L pair. • If the result is larger than 16 bits, then CY is set. • Example: DAD D
  • 48. AFTER EXECUTIONBEFORE EXECUTION B C D 10 E 20 H 20 L 50 SP B C D 10 E 20 H 30 L 70 SP CY 0 CY 0 DAD D HL=HL+R
  • 49. (6) Arithematic Instructions • SUB R • SUB M • The contents of the register or memory location are subtracted from the contents of the accumulator. • The result is stored in accumulator. • If the operand is memory location, its address is specified by H-L pair. • Example: SUB B or SUB M
  • 50. B 30 C D E H L A 50 B 30 C D E H L A 20 AFTER EXECUTIONBEFORE EXECUTION SUB B A=A-R AFTER EXECUTIONBEFORE EXECUTION A 50 A 40 H 10 L 20 H 10 L 20 SUB M A=A-M 10 10 1020H1020H
  • 51. (7) Arithematic Instructions • SBB R • SBB M • The contents of the register or memory location and Borrow Flag (i.e.CY) are subtracted from the contents of the accumulator. • The result is stored in accumulator. • If the operand is memory location, its address is specified by H-L pair. • Example: SBB C or SBB M
  • 52. B C 20 D E H L A 40 CY 1 B C 20 D E H L A 19 CY 0 SBB C A=A-R-CY AFTER EXECUTIONBEFORE EXECUTION CY 1 A 50 H 20 L 50 CY 0 A 39 H 20 L 50 AFTER EXECUTIONBEFORE EXECUTION SBB M A=A-M-CY 10 10 2050H 2050H
  • 53. (8) Arithematic Instructions • SUI 8-bit data • OPERATION: A=A-DATA(8) • The 8-bit immediate data is subtracted from the contents of the accumulator. • The result is stored in accumulator. • Example: SUI 45 H
  • 54. (9) Arithematic Instructions • SBI 8-bit data • The 8-bit data and the Borrow Flag (i.e. CY) is subtracted from the contents of the accumulator. • The result is stored in accumulator. • Example: SBI 20 H
  • 55. CY 1 A 50 AFTER EXECUTIONBEFORE EXECUTION CY 0 A 29SBI 20H A=A-DATA(8)-CY
  • 56. (10) Arithematic Instructions • INR R • INR M • The contents of register or memory location are incremented by 1. • The result is stored in the same place. • If the operand is a memory location, its address is specified by the contents of H-L pair. • Example: INR B or INR M
  • 57. B 10 C D E H L A B 11 C D E H L A AFTER EXECUTIONBEFORE EXECUTION H 20 L 50 H 20 L 50 30 31 2050H 2050H AFTER EXECUTIONBEFORE EXECUTION INR M M=M+1 B 10 C D E H L A BEFORE EXECUTION INR B R=R+1
  • 58. (11) Arithematic Instructions • INX Rp • The contents of register pair are incremented by 1. • The result is stored in the same place. • Example: INX H
  • 59. B C D E H 10 L 20 B C D E H 11 L 21 AFTER EXECUTIONBEFORE EXECUTION SPSP INX H RP=RP+1
  • 60. (12) Arithematic Instructions • DCR R • DCR M • The contents of register or memory location are decremented by 1. • The result is stored in the same place. • If the operand is a memory location, its address is specified by the contents of H-L pair. • Example: DCR E or DCR M
  • 61. B C D E 19 H L A AFTER EXECUTION B C D E 20 H L A BEFORE EXECUTION DCR E R=R-1 H 20 L 50 H 20 L 5021 20 2050H AFTER EXECUTIONBEFORE EXECUTION DCR M M=M-1 2050H
  • 62. (13) Arithematic Instructions • DCX Rp • The contents of register pair are decremented by 1. • The result is stored in the same place. • Example: DCX D
  • 63. B C D 10 E 20 H L B C D 10 E 19 H L AFTER EXECUTIONBEFORE EXECUTION SPSP DCX D RP=RP-1
  • 64. (1) Logical Instructions • ANA R • ANA M • AND specified data in register or memory with accumulator. • Store the result in accumulator (A). • Example: ANA B, ANA M
  • 65. B 10 C D E H L A B 0F C D E H L A 0A AFTER EXECUTION ANA B A=A and R B 0F C D E H L A AA BEFORE EXECUTION CY AC CY 0 AC 1 AFTER EXECUTIONBEFORE EXECUTION CY AC CY 0 AC 1 A 11A 55 H 20 L 50 H 20 L 50 B3 B3 2050H ANA M A=A and M 2050H 1010 1010=AAH 0000 1111=0FH 0000 1010=0AH 0101 0101=55H 1011 0011=B3H 0001 0001=11H
  • 66. (2) Logical Instructions • ANI 8-bit data • AND 8-bit data with accumulator (A). • Store the result in accumulator (A) • Example: ANI 3FH
  • 67. CY AC A B3 AFTER EXECUTIONBEFORE EXECUTION CY 0 AC 1 A 33 ANI 3FH A=A and DATA(8) 1011 0011=B3H 0011 1111=3FH 0011 0011=33H
  • 68. (3) Logical Instructions • XRA Register (8-bit) • XOR specified register with accumulator. • Store the result in accumulator. • Example: XRA C
  • 69. B 10 C D E H L A B C 2D D E H L A 87 AFTER EXECUTION XRA C A=A xor R B C 2D D E H L A AA BEFORE EXECUTION CY AC CY 0 AC 0 1010 1010=AAH 0010 1101=2DH 1000 0111=87H
  • 70. (4) Logical Instructions • XRA M • XOR data in memory (memory location pointed by H-L pair) with Accumulator. • Store the result in Accumulator. • Example: XRA M
  • 71. H 20 L 50 A 55 AFTER EXECUTION XRA M A=A xor M BEFORE EXECUTION CY AC CY 0 AC 0 0101 0101=55H 1011 0011=B3H 1110 0110=E6H H 20 L 50 A E6 B3 B3 2050H 2050H
  • 72. (5) Logical Instructions • XRI 8-bit data • XOR 8-bit immediate data with accumulator (A). • Store the result in accumulator. • Example: XRI 39H
  • 73. CY AC A B3 AFTER EXECUTIONBEFORE EXECUTION CY 0 AC 0 A 8A XRI 39H A=A xor DATA(8) 1011 0011=B3H 0011 1001=39H 1000 1010=8AH
  • 74. (6) Logical Instructions • ORA Register • OR specified register with accumulator (A). • Store the result in accumulator. • Example: ORA B
  • 75. AFTER EXECUTIONBEFORE EXECUTION CY AC ORA B A=A or R 1010 1010=AAH 0001 0010=12H 1011 1010=BAH B 12 C D E H L A AA B 12 C D E H L A BA CY 0 AC 0
  • 76. (7) Logical Instructions • ORA M • OR specified register with accumulator (A). • Store the result in accumulator. • Example: ORA M
  • 77. AFTER EXECUTIONBEFORE EXECUTION CY AC ORA M A=A or M 0101 0101=55H 1011 0011=B3H 1111 0111=F7H H 20 L 50 A 55 A F7 CY 0 AC 0 H 20 L 50 B3 B3 2050H 2050H
  • 78. (8) Logical Instructions • ORI 8-bit data • OR 8-bit data with accumulator (A). • Store the result in accumulator. • Example: ORI 08H
  • 79. CY AC A B3 AFTER EXECUTIONBEFORE EXECUTION CY 0 AC 0 A BB ORI 08H A=A or DATA(8) 1011 0011=B3H 0000 1000=08H 1011 1011=BBH
  • 80. (9) Logical Instructions • CMP Register • CMP M • Compare specified data in register or memory with accumulator (A). • Store the result in accumulator. • Example: CMP D or CMP M
  • 81. B 10 C D E H L A B C D B9 E H L A B8 AFTER EXECUTION CMP D A-R B C D B9 E H L A B8 BEFORE EXECUTION CY Z CY 0 Z 0 AFTER EXECUTIONBEFORE EXECUTION CY Z CY 0 Z 1 A B8A B8 H 20 L 50 H 20 L 50 B8 B8 2050H CMP M A-M 2050H A>R: CY=0,Z=0 A=R: CY=0,Z=1 A<R: CY=1,Z=0 A>M: CY=0,Z=0 A=M: CY=0,Z=1 A<M: CY=1,Z=0
  • 82. (10) Logical Instructions • CPI 8-bit data • Compare 8-bit immediate data with accumulator (A). • Store the result in accumulator. • Example: CPI 30H
  • 83. CY Z A BA AFTER EXECUTIONBEFORE EXECUTION CY 0 AC 0 A BA CPI 30H A-DATA A>DATA: CY=0,Z=0 A=DATA: CY=0,Z=1 A<DATA: CY=1,Z=0 1011 1010=BAH
  • 84. (11) Logical Instructions • STC • It sets the carry flag to 1. • Example: STC
  • 85. CY 0 AFTER EXECUTIONBEFORE EXECUTION CY 1 STC CY=1
  • 86. (12) Logical Instructions • CMC • It complements the carry flag. • Example: CMC
  • 87. CY 1 AFTER EXECUTIONBEFORE EXECUTION CY 0 CMC
  • 88. (13) Logical Instructions • CMA • It complements each bit of the accumulator. • Example: CMA
  • 89. (14) Logical Instructions • RLC • Rotate accumulator left • Each binary bit of the accumulator is rotated left by one position. • Bit D7 is placed in the position of D0 as well as in the Carry flag. • CY is modified according to bit D7. • Example: RLC.
  • 90. B7 B6 B5 B4 B3 B2 B1 B0CY B6 B5 B4 B3 B2 B1 B0 B7B7 AFTER EXECUTION BEFORE EXECUTION
  • 91. (15) Logical Instructions • RRC • Rotate accumulator right • Each binary bit of the accumulator is rotated right by one • position. • Bit D0 is placed in the position of D7 as well as in the Carry flag. • CY is modified according to bit D0. • Example: RRC.
  • 92. B7 B6 B5 B4 B3 B2 B1 B0 CY B0 B7 B6 B5 B4 B3 B2 B1 B0 AFTER EXECUTION BEFORE EXECUTION
  • 93. (16) Logical Instructions • RAL • Rotate accumulator left through carry • Each binary bit of the accumulator is rotated left by one position through the Carry flag. • Bit D7 is placed in the Carry flag, and the Carry flag is placed in the least significant position D0. • CY is modified according to bit D7. • Example: RAL.
  • 94. B7 B6 B5 B4 B3 B2 B1 B0CY B6 B5 B4 B3 B2 B1 B0 CYB7 AFTER EXECUTION BEFORE EXECUTION
  • 95. (17) Logical Instructions • RAR • Rotate accumulator right through carry • Each binary bit of the accumulator is rotated left by one position through the Carry flag. • Bit D7 is placed in the Carry flag, and the Carry flag is placed in the least significant position D0. • CY is modified according to bit D7. • Example: RAR
  • 96. B7 B6 B5 B4 B3 B2 B1 B0 CY CY B7 B6 B5 B4 B3 B2 B1 B0 AFTER EXECUTION BEFORE EXECUTION
  • 97. Concept of Subroutine • In 8085 microprocessor a subroutine is a separate program written aside from main program ,this program is basically the program which requires to be executed several times in the main program. • The microprocessor can call subroutine any time using CALL instruction. after the subroutine is executed the subroutine hands over the program to main program using RET instruction.
  • 98. Branching Instructions • The branch group instructions allows the microprocessor to change the sequence of program either conditionally or under certain test conditions. The group includes, • (1) Jump instructions, • (2) Call and Return instructions, • (3) Restart instructions,
  • 99. (1) Branching Instructions • JUMP ADDRESS • BEFORE EXECUTION AFTER EXECUTION • Jump unconditionally to the address. • The instruction loads the PC with the address given within the instruction and resumes the program execution from specified location. • Example: JMP 200H PC PC 2000JMP 2000H
  • 101. (2) Branching Instructions • CALL address • Call unconditionally a subroutine whose starting address given within the instruction and used to transfer program control to a subprogram or subroutine. • Example: CALL 2000H
  • 102. Conditional Calls Instruction Code Description Condition for CALL CC Call on carry CY=1 CNC Call on not carry CY=0 CP Call on positive S=0 CM Call on minus S=1 CPE Call on parity even P=1 CPO Call on parity odd P=0 CZ Call on zero Z=1 CNZ Call on not zero Z=0
  • 103. (3) Branching Instructions • RET • Return from the subroutine unconditionally. • This instruction takes return address from the stack and loads the program counter with this address. • Example: RET
  • 104. SP 27FD PC 00 62 SP 27FF PC 6200 00 62 AFTER EXECUTIONBEFORE EXECUTION RET 27FFH 27FEH 27FDH 27FFH 27FEH 27FDH
  • 105. (4) Branching Instructions • RST n • Restart n (0 to 7) • This instruction transfers the program control to a specific memory address. The processor multiplies the RST number by 8 to calculate the vector address. • Example: RST 6
  • 106. SP 3000 PC 2000 SP 2999 PC 0030 01 20 AFTER EXECUTIONBEFORE EXECUTION RST 6 3000H 2FFFH 2FFEH SP-1 ADDRESS OF THE NEXT INSTRUCTION IS 2001H 3000H 2FFFH 2FFEH
  • 107. Vector Address For Return Instructions Instruction Code Vector Address RST 0 0*8=0000H RST 1 0*8=0008H RST 2 0*8=0010H RST 3 0*8=0018H RST 4 0*8=0020H RST 5 0*8=0028H RST 6 0*8=0030H Rst 7 0*8=0038H
  • 108. (1) Control Instructions • NOP • No operation • No operation is performed. • The instruction is fetched and decoded but no operation is executed. • Example: NOP
  • 109. (2) Control Instructions • HLT • Halt • The CPU finishes executing the current instruction and halts any further execution. • An interrupt or reset is necessary to exit from the halt state. • Example: HLT
  • 110. (3) Control Instructions • RIM • Read Interrupt Mask • This is a multipurpose instruction used to read the status of interrupts 7.5, 6.5, 5.5 and read serial data input bit. • The instruction loads eight bits in the accumulator with the following interpretations. • Example: RIM
  • 112. • SIM • Set Interrupt Mask • This is a multipurpose instruction and used to implement the 8085 interrupts 7.5, 6.5, 5.5, and serial data output. • The instruction interprets the accumulator contents as follows. • Example: SIM