平成24年度 秋期 ITパスポート試験 問76 解説 命令実行順序
コンピュータにおける命令の実行順序に関する次の記述中のa, bに入れる字句の 適切な組合せはどれか。 コンピュータにおける命令の実行順序は, (1) プログラムカウンタの参照 (2) 命令のa (3) 次の命令の主記憶アドレスをプログラムカウンタにセットする。 (4) 命令のb (5) 命令に応じた処理を実行 (6) (1)へ戻る。 を繰り返す。
- ア 解読 読み込み
- イ 書込み 解読
- ウ 読込み 解読 ✓ 正答
- エ 読込み 書込み
解説
命令実行サイクルの基本手順を暗記して当てはめることで正解を導き出します。コンピュータがプログラムを処理する際、まずは主記憶装置から命令を取り出し、その内容を解釈してから実行に移るという流れを念頭に置いてください。
命令実行サイクルの基本手順
コンピュータのCPUは、以下のサイクルを繰り返して命令を一つずつ処理しています。
- フェッチ(命令フェッチ):主記憶装置から次に実行すべき命令を読み込む
- デコード(命令解読):読み込んだ命令が何であるかを解読する
- 実行:解読した内容に基づき、演算装置やレジスタを使って処理を行う
このサイクルを今回の問題に当てはめると、(2)の「命令のa」は読み込み(フェッチ)であり、(4)の「命令のb」は解読(デコード)となります。したがって、選択肢ウが適切です。
思考のステップ
問題文にある手順を整理すると、コンピュータの動作の本質が見えてきます。
まず、プログラムカウンタは「次に実行すべき命令のアドレス」を保持しています。このアドレスを参照して命令を取り出さないことには、CPUは何をすべきか判断できません。そのため、最初のステップは命令の「読み込み」であると判断します。
次に、読み込んだデータが「加算せよ」なのか「データを転送せよ」なのかを理解する必要があります。これが「解読」のステップです。解読が終わって初めて、CPUは具体的な回路を制御して「処理を実行」できるため、読み込みよりも先に解読が来ることはありません。
なぜこの順序が重要なのか
この問題が問うている「命令実行サイクル」は、現代のコンピュータにおける心臓部の動きです。私たちが普段使っているPCやスマートフォンも、このサイクルを1秒間に数億回から数十億回という凄まじい速度で繰り返しています。
この知識が役立つのは、コンピュータの動作原理の基礎を理解する場面です。例えば、CPUの性能指標である「クロック周波数」は、この命令実行サイクルを1秒間にどれだけ回転させられるかという能力を示しています。また、現代のCPUが採用している「パイプライン処理」という技術は、この「読み込み・解読・実行」の工程を効率よく並行して行う仕組みであり、この基本サイクルを理解していないとパイプラインの仕組みも理解できません。
試験においては、単なる暗記だけでなく、なぜその順番でなければならないのかという「処理の依存関係(先に内容を知らないと、その内容を実行できない)」を意識することが合格への近道となります。