CompilationDéveloppement et Mathématiques pour l'ingénieur (STI)
Compilation
Unité d'enseignement Informatique Fondamentale · AS07_IF1 | Code EC AS07_IF1-2
7ECTS (UE)
1Coefficient
21:20Heures
Séquencement
Objectifs pédagogiques
Ce cours présente les diverses composantes d’un compilateur pour un langage impératif et les concepts associés.
Pré-requis
| Module | Unité d'enseignement | Semestre |
|---|---|---|
| Théorie des Langages | Principes de la programmation | S5 |
Programme
- Introduction
- Compilateur, interpréteur, machines virtuelles
- Organisation d’un compilateur
- Organisation de la pile
- Activations
- Organisation des données
- Traduction dirigée par la syntaxe
- Schémas de traduction
- Schémas complets pour expressions, contrôle, fonctions
- Représentations intermédaires
- Flot de contrôle, flot des données, forme SSA
- Optimisation du code intermédiaire
- Production de code machine
- Sélection, ordonnancement
- Allocation de registres
Modalités d'évaluation
- Examen final
- Rendu de TD/Projet
Références bibliographiques
- Compilateurs : principes, techniques et outils. A. Aho, M. Lam, R. Sethi, J. Ullman, Addison-Wesley, 2007.
Compétences
2| Réf. | Verbe | Description | Niveau |
|---|---|---|---|
| C2_1 | reconnaître | la structure générale d’un compilateur et l’organisation des données lors de l’exécution des programmes | 1 |
| C2_3 | concevoir | un compilateur pour un langage impératif | 3 |