TL;DR
CPU が内蔵する記憶回路。容量は少ないが、操作の速さは最も速い。
なぜ必要か
Wikipedia によると、レジスタは計算の途中結果を一時的に持つ、メインメモリにアクセスするためのアドレスを持つ、プロセッサや周辺機器の動作状態を持つ、といった目的で使う。内部バスや演算回路と密につながっているので、高速に動く。
仕組み
用途によって次のような種類がある。
- 汎用レジスタ: 特定の用途を持たず、命令によってさまざまな用途に使う。ほとんどのプロセッサが持つ
- プログラムカウンタ: 次に実行する命令のアドレスを指す。分岐は、この値を書き換えて実現する
- スタックポインタ: コールスタックの先頭を指す
- ステータスレジスタ: 桁あふれなど、演算結果やプロセッサの状態を持つ