合格☆情報処理技術者試験

メルマガのバックナンバーです。過去問を覚えましょう。■携帯で学習可能です。

コンパイル方式の処理時間

2009-10-07 21:20:00 | 日記
Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。

[条件]

(1)
実行時間はプログラムの行数に比例する。

(2)
同じ100行のバイトコードのプログラムをインタプリタで実行すると0.2秒かかり,コンパイルしてから実行すると0.003秒かかる。

(3)
コンパイル時間は100行あたり0.1秒かかる。

(4)
コンパイル方式の場合は,プログラムの行数に関係なくファイル入出力,コンパイラ起動などのために常に0.15秒のオーバヘッドがかかる。

(5)
プログラムファイルのダウンロード時間など,そのほかの時間は無視して考える。


ア 50

イ 75

ウ 125

エ 155


これは、
平成16年度 秋期
基本情報技術者
午前 問44
です。


答えを a とするとします。

インタプリタでは
1行の実行は
0.2 / 100 = 0.002
です。

コンパイラでは
1行の実行は
0.003 / 100 = 0.00003
です。

コンパイラでは
1行のコンパイルは
0.1 / 100 = 0.001
です。

コンパイラでは
0.15
の準備時間も必要です。

つまり

0.002a > 0.00003a + 0.001a + 0.15

の、a を出せばOKです。

0.002a - 0.00003a - 0.001a > 0.15

(0.002 - 0.00003 - 0.001)a > 0.15

0.00097a > 0.15

a > 0.15 / 0.00097

a > 154.6391753

答え
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
 ↓
エの、「155」が正解です。

この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« NAS、共有 | トップ | ファンクションポイント法 »

日記」カテゴリの最新記事