CPUを理解する
CPUは命令を実行する中心装置であり、制御・演算・高速な一時記憶を協調させる。各部の役割を分けて理解すると、命令実行や性能問題の前提が整理できる。
この単元で学ぶこと
- プログラムカウンタの意味と役割を説明できる
- 命令レジスタの意味と役割を説明できる
- 汎用レジスタの意味と役割を説明できる
- CPU内部のレジスタと演算・制御機能を命令実行の流れで説明できる
本文解説
CPU内部には制御装置、ALU、複数のレジスタなどがあり、バスを介して命令やデータをやり取りする。プログラムカウンタや命令レジスタは命令実行の順序管理に重要である。
プログラムカウンタ 次に取り出す命令のアドレスを保持するレジスタ。 分岐命令では次アドレスが連続値ではなく書き換えられる。
命令レジスタ 主記憶から取り出した現在の命令を保持するレジスタ。 制御装置が命令を解読するときの入力になる。
汎用レジスタ 演算対象や途中結果などを高速に保持するレジスタ。 主記憶アクセス回数を減らし処理を高速化する。
ALU 加減算・比較・論理演算などを実行する演算装置。 制御装置からの指示に従って演算する。
制御装置 命令を解読し、CPU各部へ処理順序や動作を指示する。 データそのものの長期保存ではなく制御信号を担当する。
「何を保持するか」「何を計算するか」「何を指示するか」の3軸で区別する。アドレスならプログラムカウンタ、現在の命令なら命令レジスタ、演算ならALU、全体制御なら制御装置という具合に役割から選ぶ。
命令フェッチではプログラムカウンタが示すアドレスを使って主記憶から命令を取り出し、命令レジスタへ格納する。その後制御装置が解読し、必要に応じALUで演算する。
図解
重要ポイント
- プログラムカウンタ: 次に取り出す命令のアドレスを保持するレジスタ。
- 命令レジスタ: 主記憶から取り出した現在の命令を保持するレジスタ。
- 汎用レジスタ: 演算対象や途中結果などを高速に保持するレジスタ。
- ALU: 加減算・比較・論理演算などを実行する演算装置。
- プログラムカウンタは「次の命令のアドレス」、命令レジスタは「現在の命令」を保持する。
間違えやすい点
- プログラムカウンタに命令本体が入ると誤解しない。
- ALUと制御装置の役割を逆にしない。
- レジスタは補助記憶装置より容量が小さく高速なCPU内部記憶である。
用語解説
- プログラムカウンタ
- 次に取り出す命令のアドレスを保持するレジスタ。
- 命令レジスタ
- 主記憶から取り出した現在の命令を保持するレジスタ。
- 汎用レジスタ
- 演算対象や途中結果などを高速に保持するレジスタ。
- ALU
- 加減算・比較・論理演算などを実行する演算装置。
- 制御装置
- 命令を解読し、CPU各部へ処理順序や動作を指示する。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。