The Zilog Z80 was an 8-bit microprocessor CPU first released in 1976 by Zilog and popularized by its use in the TRS-80 personal computer and other computers of the late 1970s and early 1980s. It was succeeded by the 16-bit Zilog Z8000 processor. The Z80 had the Intel 8080 instruction set as a subset of its own instruction set. The main differences between the Z80 and 8080 were that the Z80 added: instructions to make the instruction set more orthogonal, an alternate set of the working registers to double the number available, bit and block operations, new interrupt modes, and index registers.
The chip supported hardware interrupts, 256 I/O ports, 64 Kb of memory, BCD and integer add/subtract, call/return, branching, logic operations, and shift/rotate.
Data size = 8 bits
Address size = 16 bits
8-bit Registers: A, B, C, D, E, H, L, A', B', C', D', E', H', L', I
16-bit Registers: PC, SP, IX, IY, R
Twelve of the 8-bit registers could be used as 3 16-bit registers: BC, DE, HL, BC', DE', HL'. The HL and HL' pairs were used for memory-indirect access.
Instruction set: ADD, ADC, AND, BIT, CALL, CCF, CP, CPD, CPDR, CPI, CPIR, CPL, DAA, DEC, DI, DJNZ, EI, EX, EXX, HALT, IM, IN, INC, IND, INDR, INI, INIR, JP, JR, LD, LDD, LDDR, LDI, LDIR, NEG, NOP, OR, OTDR, OTIR, OUT, OUTD, OUTI, POP, PUSH, RES, RET, RETI, RETN, RL, RLA, RLCA, RLC, RLD, RR, RRA, RRC, RRCA, RRD, RST, SBC, SCF, SET, SLA, SRA, SRL, SUB, XOR.