Composante
ENSEIRB-MATMECA
Code interne
EI7IF203
Description
Présentation des techniques et outils standards pour la compilation des langages de programmation et pour une mise en oeuvre dans le projet [[m:IF204]].
Plan
0. Objectif d'un compilateur, pourquoi étudier la compilation 1. Expressions régulières et langages réguliers, quelques rappels 2. Langages algébriques, rappels sur les grammaires 3. Analyseurs syntaxiques mise en oeuvre dans un outil (Yacc) 4. Analyse sémantique: grammaires attribuées, calculs d'attributs tels que les types et le code5. Génération de code: pour une machine à pile, pour une machine à registres. Principaux schémas de traduction, allocation de la mémoire 6. Problèmes d'optimisation: allocation de registre, optimisation de code, ... 7. Les dernières phases de compilation: assembleur, édition de lien, chargeur.
Compétences
C2. Niveau 2C3. Niveau 2C4. Niveau 2
Pré-requis obligatoires
Les expressions régulières, bases sur les grammaires et une bonne connaissance du C.
Syllabus
0. Objectif d'un compilateur, pourquoi étudier la compilation 1. Expressions régulières et langages réguliers, quelques rappels 2. Langages algébriques, rappels sur les grammaires 3. Analyseurs syntaxiques mise en oeuvre dans un outil (Yacc) 4. Analyse sémantique: grammaires attribuées, calculs d'attributs tels que les types et le code5. Génération de code: pour une machine à pile, pour une machine à registres. Principaux schémas de traduction, allocation de la mémoire 6. Problèmes d'optimisation: allocation de registre, optimisation de code, ... 7. Les dernières phases de compilation: assembleur, édition de lien, chargeur.
Bibliographie
Cours et ouvrages standards sur la compilation
Modalités de contrôle des connaissances
Évaluation initiale / Session principale - Épreuves
Type d'évaluation | Nature de l'épreuve | Durée (en minutes) | Nombre d'épreuves | Coefficient de l'épreuve | Note éliminatoire de l'épreuve | Remarques |
---|---|---|---|---|---|---|
Epreuve Terminale | Ecrit | 120 | 1 | documents autorisés sans calculatrice |
Seconde chance / Session de rattrapage - Épreuves
Type d'évaluation | Nature de l'épreuve | Durée (en minutes) | Nombre d'épreuves | Coefficient de l'épreuve | Note éliminatoire de l'épreuve | Remarques |
---|---|---|---|---|---|---|
Epreuve terminale | Ecrit | 120 | 1 | documents autorisés sans calculatrice |