コンピュータの中心にいる「頭脳」がCPU(中央処理装置)。料理店でいえば料理人です。
概要 — まず全体をつかむ
詳細 — 1段階ずつ追う
これは何をする係?
CPUは、プログラムの命令を1つずつ読み取り、計算し、判断し、他の部品に指示します。「足す」「比べる」「ここへ書く」といった小さな命令を、とてつもない速さで次々にこなすのが得意です。

登場人物メモ:
- ※1 命令 — CPUへの小さな指示(足す・比べる・移動する など)
- ※2 コア — 料理人の人数。複数あると同時並行に強い
この部分をもっと深く(中級)
CPUは、機械語の命令を命令サイクルで処理し続けます。
アニメーション『命令サイクル』を開く

- フェッチ — メモリ(実際は近いキャッシュ)から命令を取得
- デコード — 命令の意味を解読
- 実行 — 演算・分岐・メモリアクセスなどを行う
- ライトバック — 結果をレジスタやメモリへ書き戻す(初級の4段目にあたる)
登場人物メモ:
- ※1 レジスタ — CPU内の最小・最速の作業場所
- ※2 パイプライン — 複数命令を工程ごとに重ねて流し、処理を詰める仕組み
仕事の流れ
- メモリから命令を取ってくる(フェッチ)
- その命令の意味を読み解く(デコード)
- 計算・判断を実行する
- 結果をメモリなどに書き戻す
- これを1秒に何十億回も繰り返す
この部分をもっと深く(中級)
- パイプライン — 「取得中に次を解読」のように工程を重ねてスループットを上げる
- キャッシュ階層(L1/L2/L3) — メモリの遅さを、近い高速メモリで隠す
- 分岐予測・投機実行 — 先回りして無駄待ちを減らす
- 複数コア/SMT — 並列に、また1コアで見かけ上2スレッドを走らせる
アニメーション『命令パイプライン』を開く
速さを決めるもの
- クロック — 動作のリズム(速さの目安)。ただし数字だけでは決まらない
- コア数 — 同時に進められる作業の数(料理人の人数)
- キャッシュ — よく使うデータをCPUのすぐ近くに置く小さな高速メモリ
「クロックが高い=必ず速い」ではありません。用途(1つを速く/たくさん同時に)で向き不向きがあります。
この部分をもっと深く(中級)
- クロック × IPC — 実性能はクロックだけでなく1サイクルあたりの命令数(IPC)にもよる
- コア数とスケール — 並列化できる仕事は多コアが効く。できない仕事は単コア性能が効く
- メモリとの距離 — キャッシュミスは大きな待ち。データ局所性が効く
- 命令セット(ISA) — x86/Arm など。32/64ビットはレジスタ幅=一度に扱えるデータ幅。近年は電力効率も重要指標
⚠️ うまくいかないとき
- 熱くなる — 高速に動くほど発熱。冷やせないと自動で性能を落とす
- 待たされる — メモリやストレージが遅いと、CPUが暇になる(宝の持ち腐れ)
この部分をもっと深く(中級)
- サーマルスロットリング — 発熱で自動的にクロックを落とす
- キャッシュミス多発 — データの並びが悪く、メモリ待ちが増える
- 分岐予測ミス — パイプラインをやり直して無駄が出る
- 並列化の限界 — 直列部分が残ると、コアを増やしても頭打ち(アムダールの法則)
理解度チェック
そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。
問1. CPUの役割に最も近いのは?
問2. 「コア」を増やすと得意になるのは?
問3. CPUの仕事の流れの最初、メモリから命令を取ってくる工程を何という?
問4. 「キャッシュ」の説明に最も近いのはどれ?
問5. 「クロックが高い=必ず速い」とは限らない理由に近いのはどれ?
問6. CPUが高速でも、メモリやストレージが遅いと起きがちなことは?
問7. 動作のリズム(速さの目安)を表すもので、「高い=必ず速い」とは限らない指標を何という? カタカナで答えてください。
問8. 料理人の人数にたとえられ、増えると同時並行の作業に強くなるものを何と呼ぶ? カタカナで答えてください。