Lundi 21 mai 2012 | Accueil > Formations > Ingénieur Polytech Lille > Cycle Ingénieur > Génie Informatique et Statistique > Programme >
Contact
Spécialité GIS
Stéphane Janot
Directeur
tél. : 0328767320
fax : 0328767321
Service Scolarité / Admissions
tél. : +33 (0) 328 767 317
SSII Sopra Société Générale Auchan Logica Décathlon Atos R&D INRIA CNRS Administrations publiques Cofidis
Candidature
Apprentissage
Semestre 6
UE 6-5 - Calculs et compilation (112950)
Langages et traducteurs (112300)
Enseignant(s) : Serge PETITONECTS : 3.5
Objectifs à atteindre
_Introduire les bases des grammaires contextuelles et de la théorie des langages servant pour comprendre les procédés de traduction dirigée par la syntaxe, qui sont les objectifs principaux de ce cours. Les compilateurs sont introduits et étudiés comme l’exemple le plus connu, mais d’autres exemples sont présentés. Ce procédé étant de plus en plus utilisé comme moteur dans le développement de grands logiciels._
Programme détaillé
1. Introduction au langage, à la traduction, et à la compilation
1. Classe de Langage
2. Interface matériel/logiciel
3. Le modèle analyse-synthèse, les phases d’un compilateur
2. Grammaire
1. Définition des grammaires contextuelles, exemples
2. Arbres syntaxiques, abstraits, attributs et premiers éléments
3. Classe de grammaire, grammaires ambigues, récursion à gauche
3. De l’analyse d’un programme source à la génération de code
1. L’analyse lexicale
2. L’analyse syntaxique
3. L’analyse sémantique
4. Représentations intermédiaires et production de code intermédiaire
4. Un traducteur en une seule passe, exemple d’un compilateur
1. Introduction de la traduction dirigée par la syntaxe
2. Attributs sémantiques synthétisés et hérités
3. Exemple d’un traducteur d’expressions infixées en postfixées
5. Analyses lexicales et syntaxiques revisitées
1. Token, lexèmes et modèles
2. Diagrammes de transitions et reconnaisseurs automatiques, LEX
3. Compilateurs de traducteurs, YACC
6. Traduction dirigée par la syntaxe
1. Définitions dirigées par la syntaxe, S ou L attribuées
2. Graphes de dépendance, schémas de traduction
3. Traduction prédicitive récurssive
7. Génération de code intermédiare et objet
1. Langages intermédiaires, blocs de basse et graphe de contrôle
2. Génération de code simple trois adresses , optimisations
3. Un Algorithme de génération de code simple, allocation de registre
8. Exemple de traducteurs
Pré-requis
Cours de programmation et de structures de données élémentaires. Connaissance de base sur l’architecture des ordinateurs et des systèmes informatiques.
Volume horaire
| Total : | 50h |
| Cours : | 24h |
| TD : | 10h |
| TP : | 14h |
| Tutorat : | 0h |
| DS : | 2h |
Bibliographie
Compilateurs ; principes, techniques et outils, A. Aho, R. Sethi et J. Ullman. InterEdition.


