令和5年免除試験問題 問8

問8解説へ
あるプログラムは,命令a~dを次の順で実行する。
各命令の実行に必要なクロックサイクル数(CPI:Cycles Per Instruction)は,表のとおりである。 CPUのクロック周波数を100MHzとするとき,この命令列の実行時間は何ナノ秒か。ここで,命令の実行はオーバーラップしないものとする。


- 30
- 40
- 200
- 300
広告
解説
設問の記述どおり、CPIはその命令を1回実行するのに必要なクロック数です。プログラムは「a→c→b→a→c→d」の順で実行されるので、全体で必要となるクロック数は次のように計算できます。
6+4+2+6+4+8=30クロック
CPUのクロック周波数が100MHz=100,000,000Hzなので、1クロック当たりの時間は、
1秒÷100,000,000=10ナノ秒
プログラムの実行には、1回10ナノ秒のクロックが30回必要なので、実行時間は、
10ナノ秒×30クロック=300ナノ秒
したがって「エ」が正解です。
6+4+2+6+4+8=30クロック
CPUのクロック周波数が100MHz=100,000,000Hzなので、1クロック当たりの時間は、
1秒÷100,000,000=10ナノ秒
プログラムの実行には、1回10ナノ秒のクロックが30回必要なので、実行時間は、
10ナノ秒×30クロック=300ナノ秒
したがって「エ」が正解です。
広告