CPUアーキテクチャとは?計算機の頭脳であるCPUの中身の構成

公開: 更新: カテゴリ: テクノロジ系

30秒で結論

CPUアーキテクチャとは(全体像)

CPUは、計算や命令の処理を行う計算機の頭脳(CPU=中央処理装置)。CPUアーキテクチャは、その内部がどんな部品でできているかという構成のことだ。

工場にたとえると分かりやすい。司令塔(制御装置)が指示を出し、加工機(計算する部品)が作業し、手元の作業台(レジスタ)で一時的に置いておく。この役割分担で、命令を次々にこなしていく。

押さえたいのは、CPUは「命令を1つずつ、決まった手順で処理する」こと。その手順が後で出てくる4段のサイクルだ。


詳しく:部品・4段サイクル・2つの構造だけ覚えれば戦える

ここが記事の心臓部。まずCPUの主な部品を押さえよう。

CPUの主な部品

部品役割工場のたとえ
ALU(演算装置)計算(足し算や論理)を行う加工機
制御装置(CU)命令を読んで各部品に指示を出す工場長
レジスタCPU内のとても速い小さなメモリ作業台の手元
キャッシュよく使うデータを置いておく速いメモリよく使う材料の棚

レジスタの中でも、試験でよく問われるのがPC(プログラムカウンタ)。これは「次に実行する命令の場所を覚えておく」レジスタだ。`PC`はパソコン(Personal Computer)ではなく、CPU内部の専用レジスタ(Program Counter)なので注意。

次に、命令を処理する4段のサイクル。この順番が頻出だ。

命令実行の4段サイクル

段階やること
フェッチメモリから命令を取り出す
デコード命令を解読する
実行ALUで計算や処理を行う
書戻結果をレジスタやメモリに書き戻す

この①〜④が、1命令ごとにものすごい回数くり返される。最後に、CPUの基本的な2つの構造を押さえよう。

ノイマン型とハーバード型

構造命令とデータの置き場所おもな用途
ノイマン型同じメモリに置くパソコン・スマホなど(現代の主流)
ハーバード型別々のメモリに分ける組込み機器・音声処理など

つまり、現代のパソコンの多くはノイマン型(命令もデータも同じメモリ)で、ハーバード型は命令とデータを分けて同時に読み、速さをかせぐ。組込み機器でよく使われる、というわけだね。

わかりやすく言い換えると

要するに、CPUは「工場のように役割分担して命令をこなす頭脳」だ。

部品 … 工場長(制御装置)・加工機(ALU)・手元(レジスタ)・棚(キャッシュ)

4段サイクル … 材料を取る(フェッチ)→図面を読む(デコード)→加工する(実行)→棚に戻す(書戻)

構造の違い … ノイマン型は命令とデータが同じ部屋、ハーバード型は別々の部屋

「PCはパソコンではなく、次の命令の場所を覚えるレジスタ」だけは取り違えやすいので押さえておこう。


試験のツボ

🔴 一番出る:命令実行の4段サイクル

①フェッチ(取り出す)→デコード(解読)

②実行(計算)→書戻(書き戻す)の順

🔴 次に出る:部品の役割

①ALUは計算、制御装置は指示出し

②レジスタはCPU内の速い小さなメモリ

🟡 押さえると安定:構造とPC

①ノイマン型は命令・データ同じメモリ、ハーバード型は分離

②PCはProgram Counter(次の命令の場所)。パソコンではない


よくある間違い

「PCはパソコン(Personal Computer)のこと」→ ✗  PCはProgram Counter。次に実行する命令の場所を覚えるレジスタ。

「すべてのCPUはノイマン型」→ ✗  命令とデータを分けるハーバード型もある(組込み機器などで使う)。

「命令は実行から始まる」→ ✗  最初はフェッチ(取り出す)。実行は3番目。


試験での出題パターン

実際の問題でたしかめてみよう。

オリジナル問題1(部品の役割)

📝 オリジナル問題 1 CPUの部品の役割

CPUの部品に関する次の記述のうち、正しいものはどれか。

  1. ALUは命令を読んで各部品に指示を出す司令塔の役割を担う部品であるとされる
  2. ALUは計算を行う部品、制御装置は命令を読んで各部品に指示を出す部品である
  3. レジスタはCPUの外にある大容量で低速な記憶装置のことを指すものとされている
  4. 制御装置は計算だけを行い、ほかの部品への指示はいっさい出さない部品とされる
ネトスパ
ネトスパ 解答・解説

解答は 2 である。

ALUは計算を行う部品、制御装置は命令を読んで各部品に指示を出す部品なのだ。工場でいえばALUが加工機、制御装置が工場長なるぞ。

選択肢1はALUと制御装置が逆。選択肢3の「外にある低速」、選択肢4の「指示を出さない」も誤りである。

選択肢判定理由
1指示を出すのは制御装置
2ALU=計算・制御装置=指示
3レジスタはCPU内の速いメモリ
4制御装置は指示を出す

オリジナル問題2(実行サイクル)

📝 オリジナル問題 2 命令実行の4段サイクル

命令実行の4段サイクルに関する次の記述のうち、正しいものはどれか。

  1. フェッチ(取り出す)→デコード(解読)→実行→書戻、の順で命令を処理していく
  2. 実行→フェッチ→書戻→デコードの順で命令を処理すると決められているとされる
  3. 命令は書戻から始まり、最後にフェッチで取り出して終わると決められているものだ
  4. デコードを最初に行い、フェッチはいっさい行わずに命令を処理するものとされる
ネトスパ
ネトスパ 解答・解説

解答は 1 である。

命令はフェッチ(取り出す)→デコード(解読)→実行→書戻の順で流れるのだ。まず取り出し、解読し、計算し、書き戻す——この順番が頻出なるぞ。

選択肢2・3・4はどれも順番が誤りである。最初はかならずフェッチ(取り出す)なのだ。

選択肢判定理由
1フェッチ→デコード→実行→書戻
2順番が誤り
3最初はフェッチ
4フェッチを最初に行う

オリジナル問題3(ノイマン型とPC)

📝 オリジナル問題 3 ノイマン型とPC

CPUの構造とレジスタに関する次の記述のうち、正しいものはどれか。

  1. ノイマン型は命令とデータを別々のメモリに分けて置く構造だと決められている
  2. PCはPersonal Computerの略で、CPUとはなんの関係もない言葉だとされている
  3. ノイマン型は命令とデータを同じメモリに置き、PCは次の命令の場所を覚える
  4. すべてのCPUはハーバード型で、ノイマン型は存在しないものとされているものだ
ネトスパ
ネトスパ 解答・解説

解答は 3 である。

ノイマン型は命令とデータを同じメモリに置く構造(現代の主流)、PCは次に実行する命令の場所を覚えるレジスタ(Program Counter)なのだ。

選択肢1はノイマン型とハーバード型が逆。選択肢2の「Personal Computer」、選択肢4の「すべてハーバード型」も誤りなるぞ。

選択肢判定理由
1分けるのはハーバード型
2PCはProgram Counter
3ノイマン型は同一メモリ・PCは命令の場所
4ノイマン型が主流

まとめ

押さえどころ

次に学ぶ


執筆: SikakuQuest編集部

勉強は、クエストになった。

資格の勉強を、冒険に変えるRPG学習アプリ

App Storeで見る