8080 Instruction Set
Add Instructions Add Instructions
* 80 ADD B Add register B
* 81 ADD C Add register C
* 82 ADD D Add register D
* 83 ADD E Add register E
* 84 ADD H Add register H
* 85 ADD L Add register L
* 86 ADD M Add memory
* 87 ADD A Add register A
* 88 ADC B Add register B with carry
* 89 ADC C Add register C with carry
* 8A ADC D Add register D with carry
* 8B ADC E Add register E with carry
* 8C ADC H Add register H with carry
* 8D ADC L Add register L with carry
* 8E ADC M Add memory with carry
* 8F ADC A Add register A with carry
* C6 ADI Imm Add immediate
* CE ACI Imm Add immediate with carry
* 19 DAD D Add register pair DE to HL
* 29 DAD H Add register pair HL to HL
* 39 DAD SP Add register SP to HL
* 09 DAD B Add register pair BC to HL
And Instructions And Instructions
* A0 ANA B And register B
* A1 ANA C And register C
* A2 ANA D And register D
* A3 ANA E And register E
* A4 ANA H And register H
* A5 ANA L And register L
* A6 ANA M And memory
* A7 ANA A And register A
* E6 ANI Imm And immediate
Call Instructions Call Instructions
* C4 CNZ Addr Conditional Subroutine Call (Not Zero Flag)
* CC CZ Addr Conditional Subroutine Call (Zero Flag)
* CD CALL Addr Subroutine Call
* D4 CNC Addr Conditional Subroutine Call (Not Carry Flag)
* DC CC Addr Conditional Subroutine Call (Carry Flag)
* E4 CPO Addr Conditional Subroutine Call (Parity Odd, Not Parity Flag)
* EC CPE Addr Conditional Subroutine Call (Parity Even, Parity Flag)
* F4 CP Addr Conditional Subroutine Call (Positive, Not Sign Flag)
* FC CM Addr Conditional Subroutine Call (Minus, Sign Flag)
Compare Instructions Compare Instructions
* B8 CMP B Compare register B
* B9 CMP C Compare register C
* BA CMP D Compare register D
* BB CMP E Compare register E
* BC CMP H Compare register H
* BD CMP L Compare register L
* BE CMP M Compare memory
* BF CMP A Compare register A
* FE CPI Imm Compare immediate
Decrement Instructions Decrement Instructions
* 0B DCX B Decrement register pair BC to HL
* 0C INR B Increment register C
* 0D DCR B Decrement register C
* 13 INX D Increment register pair DE
* 14 INR D Increment register D
* 15 DCR D Decrement register D
* 1B DCX D Decrement register pair DE to HL
* 1C INR E Increment register E
* 1D DCR E Decrement register E
* 03 INX B Increment register pair BC
* 23 INX H Increment register pair HL
* 24 INR H Increment register H
* 25 DCR H Decrement register H
* 04 INR B Increment register B
* 2B DCX H Decrement register pair HL to HL
* 2C INR L Increment register L
* 2D DCR L Decrement register L
* 05 DCR B Decrement register B
* 33 INX SP Increment register SP
* 34 INR M Increment memory (HL)
* 35 DCR M Decrement memory (HL)
* 3B DCX SP Decrement register SP to HL
* 3C INR M Increment register A
* 3D DCR M Decrement register A
Exclusive Or Instructions Exclusive Or Instructions
* A8 XRA B Exclusive Or register B
* A9 XRA C Exclusive Or register C
* AA XRA D Exclusive Or register D
* AB XRA E Exclusive Or register E
* AC XRA H Exclusive Or register H
* AD XRA L Exclusive Or register L
* AE XRA M Exclusive Or memory
* AF XRA A Exclusive Or register A
* EE XRI Imm Exclusive Or immediate
Interrupt Instructions Interrupt Instructions
* F3 DI Disable Interrupt
* FB EI Enable Interrupt
Jump Instructions Jump Instructions
* C2 JNZ Addr Conditional Jump (Not Zero Flag)
* C3 JMP Addr Jump to Direct Address
* CA JZ Addr Conditional Jump (Zero Flag)
* D2 JNC Addr Conditional Jump (Not Carry Flag)
* DA JC Addr Conditional Jump (Carry Flag)
* E2 JPO Addr Conditional Jump (Parity Odd, Not Parity Flag)
* E9 PCHL Jump Indirect HL
* EA JPE Addr Conditional Jump (Parity Even, Parity Flag)
* F2 JP Addr Conditional Jump (Positive, Not Sign Flag)
* FA JM Addr Conditional Jump (Minus, Sign Flag)
Load Instructions Load Instructions
* 01 LXI B Load Immediate register pair BC
* 0A LDAX B
* 0E MVI B Move Immediate register C
* 11 LXI D Load Immediate register pair DE
* 16 MVI D Move Immediate register D
* 1A LDAX D
* 1E MVI E Move Immediate register E
* 21 LXI H Load Immediate register pair HL
* 26 MVI H Move Immediate register H
* 2A LHLD Addr
* 2E MVI L Move Immediate register L
* 31 LXI SP Load Immediate register SP
* 3A LDA Addr Load Direct
* 06 MVI B Move Immediate register B
* 3E MVI M Move Immediate register A
Move Instructions Move Instructions
* F9 SPHL
Or Instructions Or Instructions
* B0 ORA B Or register B
* B1 ORA C Or register C
* B2 ORA D Or register D
* B3 ORA E Or register E
* B4 ORA H Or register H
* B5 ORA L Or register L
* B6 ORA M Or memory
* B7 ORA A Or register A
* F6 ORI Imm Or immediate
Other Instructions Other Instructions
* 00 NOP No Operation
* 76 HLT Halt
* D3 OUT Port Output from Port Direct
* DB IN Port Input from Port Direct
* E3 XTHL
* EB XCHG
* 27 DAA Decimal Adjust
* 2F CMA Complement Accumulator
* 37 STC Set Carry Flag
* 3F CMC Complement Carry Flag
Reset Instructions Reset Instructions
* C7 RST 0 Reset 0
* CF RST 4 Reset 4
* D7 RST 1 Reset 1
* DF RST 5 Reset 5
* E7 RST 2 Reset 2
* EF RST 6 Reset 6
* F7 RST 3 Reset 3
* FF RST 7 Reset 7
Return Instructions Return Instructions
* C0 RNZ Addr Conditional Subroutine Return (Not Zero Flag)
* C8 RZ Addr Conditional Subroutine Return (Zero Flag)
* C9 RET Addr Subroutine Return
* D0 RNC Addr Conditional Subroutine Return (Not Carry Flag)
* D8 RC Addr Conditional Subroutine Return (Carry Flag)
* E0 RPO Addr Conditional Subroutine Return (Parity Odd, Not Parity Flag)
* E8 RPE Addr Conditional Subroutine Return (Parity Even, Parity Flag)
* F0 RP Addr Conditional Subroutine Return (Positive, Not Sign Flag)
* F8 RM Addr Conditional Subroutine Return (Minus, Sign Flag)
Rotate Instructions Rotate Instructions
* 0F RRC Rotate Right
* 17 RAL Rotate Left with Carry
* 1F RAR Rotate Right with Carry
* 07 RLC Rotate Left
Stack Instructions Stack Instructions
* C1 POP B Pop register pair BC
* C5 PUSH B Push register pair BC
* D1 POP D Pop register pair DE
* D5 PUSH D Push register pair DE
* E1 POP H Pop register pair HL
* E5 PUSH H Push register pair HL
* F1 POP SP Pop register pair PSW & A
* F5 PUSH SP Push register pair PSW & A
Store Instructions Store Instructions
* 70 MOV M,B Store register B
* 71 MOV M,C Store register C
* 72 MOV M,D Store register D
* 73 MOV M,E Store register E
* 74 MOV M,H Store register H
* 75 MOV M,L Store register L
* 77 MOV M,A Store register A
* 12 STAX D
* 02 STAX B
* 22 SHLD Addr
* 36 MVI M Move Immediate memory (HL)
* 3A LDA Addr Load Direct
Store Instructions Store Instructions
* 70 MOV M,B Store register B
* 71 MOV M,C Store register C
* 72 MOV M,D Store register D
* 73 MOV M,E Store register E
* 74 MOV M,H Store register H
* 75 MOV M,L Store register L
* 77 MOV M,A Store register A
* 12 STAX D
* 02 STAX B
* 22 SHLD Addr
* 36 MVI M Move Immediate memory (HL)
* 3A LDA Addr Load Direct
Subtraction Instructions Subtraction Instructions
* 90 SUB B Subtract register B
* 91 SUB C Subtract register C
* 92 SUB D Subtract register D
* 93 SUB E Subtract register E
* 94 SUB H Subtract register H
* 95 SUB L Subtract register L
* 96 SUB M Subtract memory
* 97 SUB A Subtract register A
* 98 SBB B Subtract register B with borrow
* 99 SBB C Subtract register C with borrow
* 9A SBB D Subtract register D with borrow
* 9B SBB E Subtract register E with borrow
* 9C SBB H Subtract register H with borrow
* 9D SBB L Subtract register L with borrow
* 9E SBB M Subtract memory with borrow
* 9F SBB A Subtract register A with borrow
* D6 SUI Imm Subtract immediate
* DE SBI Imm Subtract immediate with borrow