Compilateur lexical mini java
Introduction :…………………………………………………………………………………… 1
1. Définition d’un compilateur : 3
2. Structure d'un compilateur : 4
3. Les phases de la compilation : 4 3.1 L’analyse lexicale : 6
4. Réalisation d’un analyseur lexical du langage mini-java : 8 4.1 Définition du langage mini-java : 8 4.2 L’automate : 10 4.2 Table de transition : 11 4.3 Les types prédéfinis : 12 4.4 Les classes : 13 4.4.1 Les méthodes de la classe Compilateur : 14 4.4.2 Les méthodes de la classe AnalyseurLex: 15
5. Principe de l’Algorithme : 16
Conclusion :……………………………………………………………………………………….16
Table des figures : 17
Introduction
Avant d’exécuter un programme implémenté dans un langage évoluer quelconque il nous faudra tout d’abord vérifier les éventuelles erreurs relatives au langage (lexique, syntaxe, sémantique…) puis le traduire en langage machine et l’outil permettant d’effectuer ce traitement est appelé compilateur.
Notre TP consiste a réaliser un compilateur Mini-Java en utilisant le langage de programmation C++.
1. Définition d’un compilateur :
Un compilateur est un programme informatique qui traduit un langage, le langage source, en le un autre, appelé langage cible, en préservant la signification du texte source. Ce schéma général décrit un grand nombre de programmes différents ; et ce que l'on entend par «signification du texte source» dépend du rôle du compilateur. Lorsque l'on parle de compilateur, on suppose aussi en général que le langage source est, pour l'application envisagée, de plus haut niveau que le langage cible, c'est-à-dire qu'il présente ²un niveau d'abstraction supérieur.
En pratique, un compilateur sert le plus souvent à traduire un code source écrit dans un langage de programmation en un autre langage, habituellement un langage d'assemblage ou un langage machine. Le programme en langage machine produit par un compilateur est appelé code objet.
Le premier compilateur a été