Conception du compilateur - Architecture

Un compilateur peut être divisé en deux phases en fonction de la façon dont ils compilent.

Phase d'analyse

Connu comme le frontal du compilateur, le analysis la phase du compilateur lit le programme source, le divise en parties principales, puis vérifie les erreurs lexicales, grammaticales et de syntaxe.La phase d'analyse génère une représentation intermédiaire du programme source et de la table de symboles, qui doit être transmise à la phase de synthèse en entrée .

Phase de synthèse

Connu comme le back-end du compilateur, le synthesis phase génère le programme cible à l'aide d'une représentation de code source intermédiaire et d'une table de symboles.

Un compilateur peut avoir plusieurs phases et passes.

  • Pass : Une passe fait référence au parcours d'un compilateur dans tout le programme.

  • Phase: Une phase d'un compilateur est une étape distincte, qui prend une entrée de l'étape précédente, traite et produit une sortie qui peut être utilisée comme entrée pour l'étape suivante. Une passe peut avoir plus d'une phase.