今回は、実際に試験に出題された問題を解いていきましょう。
問題①
コンピュータの命令実行順序として、適切なものはどれか。
ア オペランド読出し ⇒ 命令の解読 ⇒ 命令フェッチ ⇒ 命令の実行
イ オペランド読出し ⇒ 命令フェッチ ⇒ 命令の解読 ⇒ 命令の実行
ウ 命令フェッチ ⇒ オペランド読出し ⇒ 命令の解読 ⇒ 命令の実行
エ 命令フェッチ ⇒ 命令の解読 ⇒ オペランド読出し ⇒ 命令の実行
(H19年秋季・ソフトウェア開発技術者試験)
解説
前回の記事でコンピュータの命令実行順序について、以下のように書きました。
- 命令の取り出し
- 命令の解読
- 対象データ読み出し
- 命令実行
の手順で行われます。
なので、正解はエです。
「命令フェッチ」の「フェッチ」は、英語で「取ってくる」という意味です。
ちなみにオペランドとは、式に現れる数値や変数などを指します。
問題②
CPUのプログラムレジスタ(プログラムカウンタ)の役割はどれか。
ア 演算を行うために、メモリから読み出したデータを保持する。
イ 条件付き分岐命令を実行するために、演算結果の状態を保持する。
ウ 命令のデコードを行うために、メモリから読み出した命令を保持する。
エ 命令を読み出すために、次の命令が格納されたアドレスを保持する。
解説
前回の記事でそれぞれの役割について解説しました。
ア 汎用レジスタの役割です。
イ アキュムレータの役割です。
ウ 命令レジスタの役割です。
エ プログラムレジスタ(プログラムカウンタ)の役割です。
参考
名称 | 役割 |
プログラムカウンタ | 次に実行する命令が入っているアドレスを記憶するレジスタ。 |
命令レジスタ | 取り出した命令を一時的に記憶するためのレジスタ。 |
インデックス(指標)レジスタ | アドレス修飾に用いるためのレジスタで、連続したデータの取り出しに使うための増分値を保持する。 |
ベースレジスタ | アドレス修飾に用いるためのレジスタで、プログラムの先頭アドレスを保持する。 |
アキュームレジスタ | 演算の対象となる数や、演算結果を記憶するためのレジスタ。 |
汎用レジスタ | 特に機能を限定していないレジスタ。一時的な値の保持や、アキュムレータなどの代用に使ったりする。 |
まとめ
いかがでしたか?
それぞれの役割を理解しておかないと解けない問題でした。
問題①は応用情報技術者の問題ではありませんが、本番の試験でも異なる試験の過去問が出題されることもあります。
しっかり勉強して、本番に挑みましょう!
0 件のコメント:
コメントを投稿