基本情報技術者試験 - 令和7年12月修了 - 問8
あるプログラムは,命令 a~d を次の順で実行する。
各命令の実行に必要なクロックサイクル数(CPI:Cycles Per Instruction)は,表のとおりである。CPUのクロック周波数を100MHzとするとき,この命令列の実行時間は何ナノ秒か。ここで,命令の実行はオーバラップしないものとする。

各命令の実行に必要なクロックサイクル数(CPI:Cycles Per Instruction)は,表のとおりである。CPUのクロック周波数を100MHzとするとき,この命令列の実行時間は何ナノ秒か。ここで,命令の実行はオーバラップしないものとする。
| 命令 | CPI |
| a | 6 |
| b | 2 |
| c | 4 |
| d | 8 |
| ア | 30 |
|---|---|
| イ | 40 |
| ウ | 200 |
| エ | 300 |
答え : エ
分野 : テクノロジ系 › コンピュータシステム › コンピュータ構成要素 › プロセッサ
解説 :
複数の命令を順に実行したときの合計実行時間を求める問題です。プログラムはa,c,b,a,c,dの順に命令を実行します。それぞれの命令のCPI(1命令あたりに必要なクロックサイクル数)は,aが6,bが2,cが4,dが8です。実行される命令列のCPIを合計すると,a(6)+c(4)+b(2)+a(6)+c(4)+d(8)で合計30クロックサイクルとなります。
クロック周波数は100MHzなので,1クロックにかかる時間は1割る100メガヘルツで10ナノ秒です。合計の実行時間は30かける10ナノ秒で300ナノ秒となり,正解は「エ」です。他の選択肢は命令の合計クロック数やクロック周期の計算を誤ったものです。
分野 : テクノロジ系 › コンピュータシステム › コンピュータ構成要素 › プロセッサ
解説 :
複数の命令を順に実行したときの合計実行時間を求める問題です。プログラムはa,c,b,a,c,dの順に命令を実行します。それぞれの命令のCPI(1命令あたりに必要なクロックサイクル数)は,aが6,bが2,cが4,dが8です。実行される命令列のCPIを合計すると,a(6)+c(4)+b(2)+a(6)+c(4)+d(8)で合計30クロックサイクルとなります。
クロック周波数は100MHzなので,1クロックにかかる時間は1割る100メガヘルツで10ナノ秒です。合計の実行時間は30かける10ナノ秒で300ナノ秒となり,正解は「エ」です。他の選択肢は命令の合計クロック数やクロック周期の計算を誤ったものです。