HOME»ソフトウェア開発技術者平成17年秋期»午前問16
ソフトウェア開発技術者平成17年秋期 午前問16
問16
CPUのパイプライン処理を有効に機能させるプログラミング方法はどれか。
- CASE文を多くする。
- 関数の個数をできるだけ多くする。
- 分岐命令を少なくする。
- メモリアクセス命令を少なくする。
- [出題歴]
- 応用情報技術者 H23秋期 問9
- 応用情報技術者 H27秋期 問8
- 基本情報技術者 H15春期 問17
分類
テクノロジ系 » コンピュータ構成要素 » プロセッサ
正解
ウ
解説
パイプライン制御は、CPUで処理される1命令を、命令読出し(フェッチ)、解読(デコード)、アドレス計算、オペランド呼出し、実行 というような複数のステージに分け、各ステージを少しずつずらしながら独立した処理機構で並列に実行することで、処理時間全体を短縮させる技法です。
パイプライン処理では、処理命令を先読みするためプログラム中に分岐命令などがあると、結果によって次に実行するべき命令がわからないため、パイプラインを止めて次に実行すべき命令が判明するのを待たなければなりません。これを分岐ハザードと呼びます。分岐ハザードを発生させないためには、分岐命令を少なくすることが有効な方法です。
パイプライン処理では、処理命令を先読みするためプログラム中に分岐命令などがあると、結果によって次に実行するべき命令がわからないため、パイプラインを止めて次に実行すべき命令が判明するのを待たなければなりません。これを分岐ハザードと呼びます。分岐ハザードを発生させないためには、分岐命令を少なくすることが有効な方法です。
- CASE文は分岐命令の一種なので、分岐ハザードの確率を高めてしまいます。
- パイプライン制御の高速化とは関係ありません。
- 正しい。
- パイプライン制御の高速化とは関係ありません。