Compiler-design-architecture
提供:Dev Guides
コンパイラ設計-アーキテクチャ
コンパイラは、コンパイル方法に基づいて2つのフェーズに大きく分けることができます。
分析フェーズ
コンパイラのフロントエンドとして知られる、コンパイラの analysis フェーズは、ソースプログラムを読み取り、それをコア部分に分割してから、字句、文法、および構文エラーをチェックします。分析フェーズでは、ソースプログラムの中間表現が生成されます。シンボルテーブル。入力として合成フェーズに供給する必要があります。
合成フェーズ
コンパイラのバックエンドとして知られている synthesion フェーズは、中間ソースコード表現とシンボルテーブルの助けを借りてターゲットプログラムを生成します。
コンパイラには、多くのフェーズとパスがあります。
- パス:パスとは、プログラム全体でのコンパイラの走査を指します。
- フェーズ:コンパイラのフェーズは区別可能なステージであり、前のステージからの入力を処理し、次のステージの入力として使用できる出力を処理および生成します。 パスには複数のフェーズを含めることができます。