Contrary to some reports, the Z80 did not have "one accumulator and one index register". It had an 8-bit accumulator A, 16-bit registers (and register pairs) BC, DE, HL, IX, IY, and alternate registers A', BC', DE', HL'. It also had a flags register F (alternate F'), a stack pointer SP, and program counter PC.

Breaking up the register pairs gives 16 general purpose registers (or 18 if you count IXH, IXL, IYH, and IYL which were undocumented but worked fine).

Not bad for an 8-bit
machine.