コンピュータ構成要素

基本情報技術者試験命令実行時間」の問題

テクノロジ系コンピュータ構成要素計算問題難易度:normal
あるCPUが1命令を処理するのに、フェッチ20ns・デコード10ns・実行30ns・書き戻し15nsを順に要し、各段は重ならず逐次に行われる。この方式で200命令を連続実行するのに要する時間はおよそ何μsか。
7.5μs
15μs
60μs
およそ150μs
正解
15μs

各段は重ならず逐次なので1命令の所要時間は20+10+30+15=75ns。200命令連続では75ns×200=15000ns=15μsとなり正しい。

?選択肢ごとの解説

ア ×7.5μsは1命令の所要時間を75nsの半分(約37.5ns)と取り違える、または命令数を100と読み違えた誤りである。
イ ○各段は重ならず逐次なので1命令の所要時間は20+10+30+15=75ns。200命令連続では75ns×200=15000ns=15μsとなり正しい。
ウ ×60μsは段の所要時間の合計を取り違える、たとえば最長段の30nsだけを基準に別係数を掛けるなどした不正な値である。
エ ×およそ150μsは1命令を750nsと10倍に取り違える、あるいはns→μsの換算で桁を1つ誤った値である。

くわしく

パイプライン化されていない逐次実行では各段の時間が単純加算され、命令あたりの時間=段時間の総和となる。これに命令数を掛ければ総実行時間が出る。もしパイプライン化すれば各段が重なり大幅に短縮されるが、本問は重ならない前提である点が要点である。

本番での押さえどころ

試験のコツ

まず1命令の合計時間を求め、命令数を掛ける。最後に1μs=1000nsで単位をそろえて換算する。

覚え方

逐次実行は『段を全部足して、命令数だけ繰り返す』と覚える。重なりがないから単純な掛け算になる。

よくある誤り

ns(ナノ秒)とμs(マイクロ秒)の換算(1μs=1000ns)を誤り桁をずらす、または段時間の加算を取り違える誤りが多い。

コンピュータ構成要素の他の問題

この問題を、AIの8-ways解説つきで。

基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。

無料ではじめる →

ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0146

【基本情報技術者試験】命令実行時間の問題 — 解答・解説|ukamiru 過去問