「CPUって命令をどうやって実行しているの?」
応用情報技術者試験でもコンピュータシステム分野で頻出ですが、
- フェッチって何?
- デコードって何?
- プログラムカウンタの役割は?
- 命令サイクルって何?
で混乱する人がかなり多いテーマです。
この記事では、
- 命令実行とは?
- 命令サイクル
- CPU内部の動き
- 試験での頻出ポイント
を5分で理解できるように解説します!
まず結論
命令実行とは?
「CPUが主記憶から命令を取り出し、解読し、実行する処理」
です!
超簡単にいうと
「レシピを見て料理を作る」
イメージです。
命令実行の流れ
超頻出!
CPUは以下を繰り返します。
命令取出し
↓
命令解読
↓
命令実行
↓
次の命令
これを
命令サイクル
という。
命令取出し(フェッチ)
超頻出!
英語
Fetch
役割
主記憶から命令を取り出す。
イメージ
メモリ
↓
命令取得
使用するレジスタ
プログラムカウンタ(PC)
プログラムカウンタとは?
超重要!
次に実行する命令のアドレスを保持
イメージ
100番地
↓
命令取得
命令解読(デコード)
超頻出!
英語
Decode
役割
命令の意味を理解する。
例
ADD
↓
加算命令だ!
LOAD
↓
読込み命令だ!
命令実行(Execute)
超頻出!
英語
Execute
役割
実際の処理を実行する。
例
5 + 3
↓
8
演算装置(ALU)
重要!
Arithmetic Logic Unit
役割
- 四則演算
- 論理演算
を担当する。
命令サイクルの全体像
超重要!
①フェッチ
↓
②デコード
↓
③実行
↓
④次命令
イメージ
レシピ確認
↓
内容理解
↓
料理実行
レジスタの役割
頻出!
| レジスタ | 役割 |
|---|---|
| プログラムカウンタ(PC) | 次の命令アドレス |
| 命令レジスタ(IR) | 実行中の命令 |
| 汎用レジスタ | データ保存 |
| アキュムレータ | 演算結果保存 |
分岐命令の場合
重要!
通常
100
↓
101
↓
102
順番に実行。
分岐発生
100
↓
500
プログラムカウンタが変更される。
パイプラインとの関係
発展知識!
命令サイクルを
フェッチ
デコード
実行
へ分割し、
同時進行する技術。
パイプライン処理
応用情報で超頻出
かなり狙われる👇
- フェッチ
- デコード
- 実行
- プログラムカウンタ
- 命令サイクル
よくあるひっかけ
「プログラムカウンタは現在実行中の命令を保存する」
→ ❌違う!
プログラムカウンタは
次に実行する命令のアドレス
を保持する。
1分で復習!
命令実行
命令を処理する流れ
命令サイクル
- フェッチ
- デコード
- 実行
プログラムカウンタ
次の命令アドレス
ALU
演算担当
練習問題
問題
プログラムカウンタ(PC)の役割として最も適切なものはどれか。
ア
演算結果を保存する
イ
次に実行する命令のアドレスを保持する
ウ
命令を解読する
エ
主記憶を管理する
解答
正解:イ
解説
プログラムカウンタは、次に実行する命令の格納アドレスを保持するレジスタです。
まとめ
命令実行とは
「CPUが命令を処理する流れ」
命令サイクル
フェッチ → デコード → 実行
超重要
- フェッチ
- デコード
- 実行
- プログラムカウンタ
- ALU
まずは、
「レシピを見る(フェッチ)」
「内容を理解する(デコード)」
「料理する(実行)」
このイメージを持つとかなり理解しやすくなります!
知識に自信ができた方は、今度は自身のキャリアアップに向けて準備してみませんか?

未経験から、ITエンジニアへ。
「IT業界に興味はあるけれど、自分にできるか不安」「何から始めればいいのか分からない」そんな方のために、Tech GO は未経験からのIT転職を専門的にサポートします。求人を紹介するだけではなく、あなたの強みを整理し、応募準備から入社後の成…
まずは無料でキャリア相談

コメント