必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. 応用情報技術者
  3. 平成23年度秋季問題一覧
  4. 平成23年度秋季問題9-解答・解説-分析

平成23年度秋季問題

問題9

CPUのパイプライン処理を有効に機能させるプログラミング方法はどれか。

CASE文を多くする。
関数の個数をできるだけ多くする。
分岐命令を少なくする。
メモリアクセス命令を少なくする。

CPUのパイプライン処理を有効に機能させるプログラミング方法はどれか。

CASE文を多くする。
関数の個数をできるだけ多くする。
分岐命令を少なくする。
メモリアクセス命令を少なくする。

解答:ウ

<解説>

パイプラインは,1つの命令の実行サイクルを複数のステージに分割し,各段階の処理を別々の装置が担当することによって,各命令のステージを重ねて,並列実行することにより 1命令あたりの実行効率を上げる方式である。

× CASE文を多くすることは、分岐命令が増えることと同じである。よってパイプライン処理の効率は悪くなる。
× 関数の個数を多くすると、関数の戻り値によって次の処理が変わる可能性が増えるのでパイプライン処理の効率は悪くなる。
分岐命令がある場合、結果によって次に実行するべき命令がわからないため、パイプラインを止めて次に実行すべき命令が判明するのを待たなければならない。すなわち分岐命令を少なくすることでパイプラインハザードが減りパイプライン処理が有効に機能しやすくなる。
× メモリアクセス命令はCPUの内部処理ではないので並行実行しやすい。したがってメモリアクセス命令を減らせばCPUの内部処理が増えるためパイプライン処理の効率は悪くなる。