HOME»基本情報技術者試験掲示板»平成27年 春 問2 設問3
投稿する
平成27年 春 問2 設問3 [2822]
ゆーさん(No.1)
設問3のcについてなのですが、
コンパイル時間を求めるときに0.1÷1000×400という計算をしています。
400の部分が2000ではない理由について、説明していただけないでしょうか
コンパイル時間を求めるときに0.1÷1000×400という計算をしています。
400の部分が2000ではない理由について、説明していただけないでしょうか
2021.02.09 18:20
関数従属さん(No.2)
★FE ゴールドマイスター
関数Fの中にループ処理等が入っていると
中間コードの命令数と実行する中間コードの命令数が
異なる事があるという感じかと思います。
例えば関数Fが以下のようなイメージだと、中間コードは400命令で、
実行する中間コードの命令数が2,000命令になるかと思います。
[関数F]
1行目 for (int count = 1; count <= 5; count++){
・・・
・・・
・・・
400行目 }
コンパイルはあくまで中間コードの(ソース)命令数に依存するので、400命令になるかと思います。
中間コードの命令数と実行する中間コードの命令数が
異なる事があるという感じかと思います。
例えば関数Fが以下のようなイメージだと、中間コードは400命令で、
実行する中間コードの命令数が2,000命令になるかと思います。
[関数F]
1行目 for (int count = 1; count <= 5; count++){
・・・
・・・
・・・
400行目 }
コンパイルはあくまで中間コードの(ソース)命令数に依存するので、400命令になるかと思います。
2021.02.10 00:03
ゆーさん(No.3)
イメージがわかりやすく、理解することができました。
関数従属さんありがとうございます。
関数従属さんありがとうございます。
2021.02.10 12:36