Projet de tp 2020 2021 REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l ? Enseignement Supérieur et de la Recherche Scienti ?que Université des Sciences et de la Technologie Houari Boumediène REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE M
REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l ? Enseignement Supérieur et de la Recherche Scienti ?que Université des Sciences et de la Technologie Houari Boumediène REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l ? Enseignement Supérieur et de la Recherche Scienti ?que Université des Sciences et de la Technologie Houari Boumediène Projet de TP Réalisation d ? un mini compilateur pour le langage ? TinyLanguage SII ? Avec l ? outil ANTLR Assistante de TP Dr Lylia BETIT Master SII - CI Motivation Un compilateur est un programme qui traduit un programme écrit dans un langage source vers un langage cible en indiquant les erreurs éventuelles que pourrait contenir le programme source Un informaticien à peu de chances d ? être impliqué dans la réalisation d ? un compilateur pour un langage de programmation majeur ?? Alors pourquoi ce TP La compilation n ? est pas limitée à la traduction d ? un programme informatique écrit dans un langage de haut niveau en un programme directement exécutable par une machine cela peut aussi être - La traduction d ? un langage de programmation de haut niveau vers un autre langage de programmation de haut niveau - La traduction d ? un langage de programmation de bas niveau vers un autre langage de programmation de haut niveau Par exemple pour retrouver le code C à partir d ? un code compilé piratage récupération de vieux logiciels etc - La traduction d ? un langage quelconque vers un autre langage quelconque i e pas forcément de programmation word vers html pdf vers ps etc Ce genre de travail peut très bien être con ?é à un ingénieur ma? tre de nos jours La compilation se décompose en deux phases - Une phase d ? analyse qui va reconna? tre les variables les instructions les opérateurs et élaborer la structure syntaxique du programme ainsi que certaines propriétés sémantiques - Une phase de synthèse et de production qui devra produire le code cible Pour réaliser un compilateur plusieurs environnements sont disponibles Lex Yacc Flex Bison Java Compiler Compiler Free Compiler Construction Tools ANTLR ANother Tool for Language Recognition The Compiler Generator Coco R etc Dans le cadre de ce projet nous allons utiliser ANTLR Another Tool for Language Recognigtion prononcé antler est un générateur d'analyseurs qui utilise LL pour l ? analyse syntaxique C'est un outil qui propose un framework pour construire des compilateurs à partir de descriptions grammaticales qui peuvent éventuellement contenir des instructions écrites en Java C C etc Un générateur d'analyseurs est un outil qui lit une grammaire en entrée et la convertit en un programme qui peut reconna? tre un texte et le traiter suivant les règles de cette grammaire ANTLR a été développé par Terrence Parr dans le langage Java mais il peut générer des analyseurs dans un code écrit dans l'un de ses nombreux langages de programmation cibles Sa dernière version est ANTLR qui génère un code Java C Python Python JavaScript Go C et Swift En
Documents similaires










-
28
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Fev 26, 2022
- Catégorie Management
- Langue French
- Taille du fichier 47.9kB