2.2 レジスタ

Chip-8は16個の8ビット汎用レジスタを持っており、本ドキュメントではVx(xは16進数で0からFまで)と表記する、もう一つ16ビットのIというレジスタがある。Iはメモリアドレスの格納のために使われる。下位12ビットのみ通常使われる。

VFレジスタはプログラムから通常直接使われず、いくつかの命令のフラグとして使われる。詳しくは3.0 命令を参照のこと。

Chip-8には二つの特別な8ビットレジスタがある、delayとサウンドタイマーである。これらのレジスタがゼロ以外の場合、60Hzの速度で自動的にデクリメントされていく。

また、プログラムからアクセス不可なレジスタ(pseudo-registers)がある。プログラムカウンタPCは16ビットで現在の実行アドレスを格納する。スタックポインタSPは8ビットでスタックの先頭のインデックスを表す。

スタックは16個の16ビットの配列で、インタプリタのサブルーチンのリターンアドレスを格納する。Chip-8は16段階のサブルーチンの呼び出しが可能である。