ZiLOGによって開発された8ビットマイクロプロセッサの一つ。1980年代に広く使われ、今でも組み込み用途で広く使われている、8ビットマイクロプロセッサの代表である。
Z80のオリジナルは、クロック周波数2.5MHzで動作した。その高速版は、末尾のアルファベットで識別される。
多くのZ80搭載機はZ80A相当が使われた。MSXのFS-A1FX、WX、WSXの三機種にはZ80Bが搭載され5.38MHzで動作する。
Z80Hは軍事用Z80とも呼ばれる高速版。シャープ製のものはZ80Eとされている。
8080との命令上の違いに、次のようなものがある(順不同)。
8080やZ80はAF/BC/DE/HLという4つの16ビットレジスタを持っているが、Z80では同じレジスタをもう一組用意し、命令で相互に切り替えて裏表として利用できるという特徴を持っている。PUSH/POPより高速なので、割り込み処理でよく使われる。
IX/IYレジスタ命令は、8080にもあったHLレジスタ命令の前にプリフィックスを置くという拡張法が採用された。本来は16ビットレジスタが想定されていたIX/IYレジスタだったが、このプリフィックスをHレジスタやLレジスタの命令の前に置くと、IX/IYレジスタを8ビット単位で利用できるという、命令表に無い「隠し命令」が存在した。
またこの特徴から、HLレジスタとIX/IYレジスタを直接代入することが出来ない(LD IX, HLなどはできず、一旦スタック等を経由する必要がある)。
Z80は広く使われたため、様々な互換プロセッサや高速プロセッサ、拡張プロセッサが登場している。
パソコン用としては現役を退いた後も、制御機器の組み込み用プロセッサとして利用された。
このほかにも、様々なZ80互換あるいはZ80風プロセッサが作られ、使われている。
Z80は、次のレジスタを持つ。
A、B、C、D、E、H、Lは、8080の同名のレジスタと同じ機能を有する。Fは、8080上位互換のフラグレジスタである。
'が付いたレジスタは「裏レジスタ」と呼ばれ、Z80から追加された。命令によりA/F、またはBC/DE/HLを裏表で交換することが出来、割り込み処理などで利用された。
凡例は次の通り。
以下は8080にある命令も含む。Z80で追加された命令には注釈を入れた。
I/Oポートに対するブロック命令は、後述する入出力命令の項を参照のこと。