You are on page 1of 8

Summary of 8085 Instruction Set

Instruction Op code Operations performed


ACI DATA CE [A]  [A] + second instruction byte +[Cy]
ADC A 8F [A]  [A] +[A] + [Cy]
ADC B 88 [A]  [A] + [B] + [Cy]
ADC C 98 [A]  [A] + [C] + [Cy]
ADC D 8A [A]  [A] + [D] + [Cy]
ADC E 8B [A]  [A] + [E] + [Cy]
ADC H 8C [A]  [A] + [H] + [Cy]
ADC L 8D [A]  [A] + [L] + [Cy]
ADC M 8E [A]  [A] + [(H L)] + [Cy]
ADD A 87 [A]  [A] + [A]
ADD B 80 [A]  [A] + [B]
ADD C 81 [A]  [A] + [C]
ADD D 82 [A]  [A] + [D]
ADD E 83 [A]  [A] + [E]
ADD H 84 [A]  [A] + [H]
ADD L 85 [A]  [A] + [L]
ADD M 86 [A]  [A] + [(H L)]
ADI DATA C6 [A]  [A] + second instruction byte
ANA A A7 [A]  [A]  [A]
ANA B A0 [A]  [A]  [B]
ANA C A1 [A]  [A]  [C]
ANA D A2 [A]  [A]  [D]
ANA E A3 [A]  [A]  [E]
ANA H A4 [A]  [A]  [H]
ANA L A5 [A]  [A]  [L]
ANA M A6 [A]  [A]  [(H L)]
ANI DATA E6 [A]  [A]  second instruction byte
CALL CD Call A subroutine addressed by ppqq
ppqq
CC ppqq DC Call a subroutine addressed by ppqq if Cy
=1
CM ppqq FC Call a subroutine addressed by ppqq if S =1
CMA 2F [A]  1’s complement of [A]
CMC 3F [Cy] 1’s complement of [Cy]
CMP A BF [A] – [A] and affects flags
CMP B B8 [A] – [B] and affects flags
CMP C B9 [A] –[C] and affects flags
CMP D BA [A] – [D] and affects flags
CMP E BB [A] – [E] and affects flags
ADI DATA C6 [A]  [A] + second instruction byte
ANA A A7 [A]  [A]  [A]
ANA B A0 [A]  [A]  [B]
ANA C A1 [A]  [A]  [C]
ANA D A2 [A]  [A]  [D]
ANA E A3 [A]  [A]  [E]
ANA H A4 [A]  [A]  [H]
ANA L A5 [A]  [A]  [L]
ANA M A6 [A]  [A]  [(H L)]
ANI DATA E6 [A]  [A]  second instruction byte
CALL CD Call A subroutine addressed by ppqq
ppqq
CC ppqq DC Call a subroutine addressed by ppqq if Cy
=1
CM ppqq FC Call a subroutine addressed by ppqq if S =1
CMA 2F [A]  1’s complement of [A]
CMC 3F [Cy] 1’s complement of [Cy]
CMP A BF [A] – [A] and affects flags
CMP B B8 [A] – [B] and affects flags
CMP C B9 [A] –[C] and affects flags
CMP D BA [A] – [D] and affects flags
CMP E BB [A] – [E] and affects flags
DCR E 1D [E]  [E] – 1
DCR H 25 [H] [H] -1
DCR L 2D [L]  [L] -1
DCR M 35 [(HL)]  [(HL)] -1
DCX B 0B [BC]  [BC] -1
DCX D 1B [DE]  [DE] -1
DCX H 2B [HL]  [HL] - 1
DCX SP 3B [SP]  [SP ] – 1
DI F3 Disable interrupts
EI FB Enable interrupts
HLT 76 Halt
IN PORT DB [A]  [specified port]
INR A 3C [A]  [A] +1
INR B 04 [B]  [B] +1
INR C 0C [C]  [C] +1
INR D 14 [D]  [D] + 1
INR E 1C [E]  [E] + 1
INR H 24 [H]  [H] + 1
INR L 2C [L]  [L] + 1
INR M 34 [(HL)]  [(HL)] +1
INX B 03 [BC]  [BC] +1
INX D 13 [DE]  [DE] + 1
INX H 23 [HL]  [HL] + 1
INX SP 33 [SP]  [SP] + 1
JC ppqq DA Jump to ppqq if Cy = 1
JM ppqq FA Jump to ppqq if S =1
JMP ppqq C3 Jump to ppqq
JNC ppqq D2 Jump to ppqq if Cy =0
JNZ ppqq C2 Jump to ppqq if Z = 0
JP ppqq F2 Jump to ppqq if S = 0
JPE ppqq EA Jump to ppqq if p = 1
JPO ppqq E2 Jump to ppqq if P= 0
JZ ppqq CA Jump to ppqq if Z = 1
LDA ppqq 3A [A]  [ ppqq]
LDAX B 0A [A] [ (BC)]
LDAX D 1A [A]  [(DE)]
LHLD 2A [L] [ppqq], [H]  [ppqq + 1]
ppqq
LXI B 01 [BC]  second and third instruction
bytes
LXI D 11 [DE]  second and third instruction bytes
LXI H 21 [HL]  second and third instruction bytes
LXI SP 31 [SP]  second and third instruction bytes
MOV A,A 7F [A]  [A]
MOV A,B 78 [A]  [B]
MOV A,C 79 [A]  [C]
MOV A,D 7A [A]  [D]
MOV A,E 7B [A]  [E]
MOV A,H 7C [A]  [H]
MOV A, L 7D [A]  [L]
MOV A,M 7E [A]  [(HL )]
MOV B,A 47 [B]  [A]
MOV B,B 40 [B]  [B]
MOV B,C 41 [B]  [C]
MOV B,D 42 [B]  [D]
MOV B,E 43 [B]  [E]
MOV B,H 44 [B]  [H]
MOV B,L 45 [B]  [L]
MOV B,M 46 [B]  [(H L)]
MOV C,A 4F [C] [A]
MOV C,B 48 [C]  [B]
MOV C,C 49 [C] [C]
MOV C,D 4A [C]  [D]
MOV C,E 4B [C]  [E]
MOV C,H 4C [C]  [H]
MOV C,L 4D [C]  [L]
MOV C,M 4E [C]  [(H L)]
MOV D,A 57 [D]  [A]
MOV D,B 50 [D]  [B]
MOV D,C 51 [D]  [C]
MOV D.D 52 [D]  [D]
MOV D,E 53 [D]  [E]
MOV D,H 54 [D]  [H]
MOV D,L 55 [D]  [L]
MOV 56 [D]  [(H L)]
D,M
MOV E,A 5F [E]  [A]
MOV E,B 58 [E]  [B]
MOV E,C 59 [E]  [C]
MOV E,D 5A [E]  [D]
MOV E,E 5B [E]  [E]
MOV E,H 5C [E]  [H]
MOV E,L 5D [E]  [L]
MOV 5E [E]  [(H L)]
E,M
MOV H,A 67 [H]  [B]
MOV H,B 60 [H]  [A]
MOV H,C 61 [H]  [C]
MOV H,D 62 [H] [D]
MOV H,E 63 [H]  [E]
MOV H,H 64 [H]  [H]
MOV H,L 65 [H] [L]
MOV 66 [H]  [(H L)]
H,M
MOV L,A 6F [L]  [A]
MOV L,B 68 [L]  [B]
MOV L,C 69 [L]  [C]
MOV L,D 6A [L]  [D]
MOV L,E 6B [L]  [E]
MOV L,H 6C [L] [H]
MOV L,L 6D [L]  [L]
MOV 6E [L]  [(H L)]
L,M
MOV 77 [(HL)]  [A]
M,A
MOV 70 [(HL)]  [B]
M,B
MOV 71 [(HL )]  [C]
M,C
MOV 72 [(HL)]  [D]
M,D
MOV 73 [(HL)]  [E]
M,E
MOV 74 [(HL)]  [H]
M,H
MOV 75 [(HL)]  [L]
M,L
MVI A, 3E [A]  second instruction byte
DATA
MVI B, 06 [B]  second instruction byte
DATA
MVI C, 0E [C]  second instruction byte
DATA
MVI D, 16 [D]  second instruction byte
DATA

MVI E, 1E [E]  second instruction byte


DATA
MVI H, 26 [H]  second instruction byte
DATA
MVI L, 2E [L]  second instruction byte
DATA
MVI M, 36 [(HL)]  second instruction byte
DATA
NOP 00 No operation
ORA A B7 [A]  [A]  [A]
ORA B B0 [A]  [A]  [B]
ORA C B1 [A]  [A]  [C]
ORA D B2 [A]  [A]  [D]
ORA E B3 [A]  [A]  [E]
ORA H B4 [A]  [A]  [H]
ORA L B5 [A]  [A]  [L]
ORA M B6 [A]  [A]  [(HL)]
ORI F6 [A] [A]  second instruction byte
DATA
OUT D3 [specified port ]  [A]
PORA
PCHL E9 [PCH]a  [H], [PCL] a  [L]
POP B C1 [C]  [(SP)], [SP]  [SP] +2
[B]  [(SP) + 1]
POP D D1 [E]  [(SP)], [SP]  [SP]+2
[D]  [(SP) +1]
POP H E1 [L]  [(SP)],[SP]  [SP] +2
[H]  [(SP)] +1]
POP PSW F1 [A]  [(SP) + 1], [PSW]  [(SP)], [SP] 
[SP] +2 [(SP) –1]  [B], [SP]  [SP] –2
PUSH B C5 [(SP)–2  [C]
PUSH D C5 [(SP) -1 ]  [D], [(SP) –2]  [E][SP] 
[SP] –2
PUSH H E5 [(SP)-1 ]  [H],[SP]  [SP] –2 [(SP) –2 ] 
[L]
PUSH F5 [(SP) –1  [A],[SP]  [SP] –2 [(SP) –2 ] 
PSW [PSW]
RC D8 Return if carry; [PC]  [SP]
RET C9 [PCL] a  [(SP)], [SP]  [SP] +2 [PCH] a

 [(SP)] +1]
RIM 20 Read interrupt mask
RM F8 Return if minus; [PC]  [(SP)]
RNC D0 Return if no carry; [PC]  [(SP)]
RNZ C0 Return if result not zero; [PC]  [(SP)]
RP F0 Return if positive; [PC]  [(SP)], [SP} 
[SP] +2
RPE E8 Return if parity even; [PC]  [(SP)], [SP]
 [SP] +2
RPO E0 Return if parity odd;[PC]  [(SP)], [SP] 
[SP] +2
RST0 C7 Restart
RST 1 CF Restart
RST 2 D7 Restart
RST 3 DF Restart
RST 4 E7 Restart
RST 5 EF Restart
RST 6 F7 Restart
RST 7 FF Restart
RZ C8 Return if zero; [PC]  [(SP)]
SBB A 9F [A]  [A] – [A] -[Cy]
SBB B 98 [A]  [A] – [B] – [Cy]
SBB C 99 [A]  [A] – [C] – [Cy]
SBB D 9A [A]  [A] – [D] – [Cy]
SBB E 9B [A]  [A] – [E] – [Cy]
SBB H 9C [A]  [A] – [H – [Cy]
SBB L 9D [A]  [A] –[L] – [Cy]
SBB M 9E [A]  [A] – second instruction
SBI DATA DE [A]  [A] – second instruction byte – [Cy]
SHLD 22 [ppqq  [L] [ppqq + 1 ]  [H]
ppqq
SIM 30 Set interrupt mask
SPHL F9 [SP]  [HL]
STA ppqq 32 [ppqq]  [A]
STAX B 02 [(BC)]  [A]
STAX D 12 [(DE )]  [A]
STC 37 [Cy]  1
SUB A 97 [A]  [A] – [A]
SUB B 90 [A]  [A] – [B]
SUB C 91 [A]  [A] – [C]
SUB D 92 [A]  [A] – [D]
SUB E 93 [A]  [A] – [E]
SUB H 94 [A]  [A] – [H]
SUB L 95 [A]  [A] –[L]
SUB M 96 [A]  [A] – [(HL)]
SUI DATA D6 [A]  [A] – second instruction byte
XCHG EB [D] [L]
XRA A AF [A]  [A] + [A]
XRA B A8 [A]  [A] + [B]
XRA C A9 [A]  [A] + [C]
XRA D AA [A]  [A] + [D]
XRA E AB [A]  [A] + [E]
XRA H AC [A]  [A] + [H]
XRA L AD [A]  [A] + [L]
XRA M AE [A]  [A] + [(HL)]
XRI ee [A]  [A] + second instruction byte
DATA
XTHL E3 [(SP)]  [L], [(SP) + 1 )] [H]

You might also like