修了試験 2012-01-22実施分 基本情報技術者試験 問25
手続型言語のコンパイラが行う処理のうち,最初に行う処理はどれか。
正答4
解説
正解は4です。 コンパイラは、原始プログラムを目的プログラムに翻訳するとき、決まった順序で処理を行います。 その順序は、字句解析、構文解析、意味解析、最適化、コード生成です。 【選択肢別解説】 1:× 意味解析は、構文解析の後に行い、変数の型の整合性などを調べます。 最初の処理ではありません。 2:× 構文解析は、字句解析で得た字句の並びが文法に合うかを調べ、構文木を作ります。 字句解析の結果を使うので2番目の処理です。 3:× 最適化は、実行速度やサイズを改善するために中間コードを変換する処理です。 解析がすべて終わった後で行います。 4:○ 字句解析は、原始プログラムの文字の並びを、予約語・変数名・演算子などの字句(トークン)に分解します。 これがコンパイラの最初の処理です。 【ポイント】 「字句、構文、意味、最適化、コード生成」の順番は頻出なので、そのまま覚えましょう。 構文解析では、BNF(バッカス・ナウア記法)などで定義された文法に照らして解析します。まとめて解く
修了試験 2012-01-22実施分を通しで解く(80問)→