Compilation

Responsable : Alexis Nasr
Informations
  Compilation
Organisation et contenu du cours
Modalités de contrôle
Le projet
Examens des années précédentes
Bibliographie



Organisation et contenu du cours

Semaine vendredi 10h00 - 12h00 vendredi 14h00 - 16h00 vendredi 16h15 - 18h15
1 15/01/21 CM 1 : Introduction à la compilation
Introduction à la Théorie des langages
TD 1 : Grammaires hors-contexte
2 22/01/21 CM 2 : Analyse syntaxique LR
Sablecc
TD 2 : Ecriture de la grammaire du langage L TP 1 : Analyse syntaxique
3 29/01/21 CM 3 : Grammaires attribuées
Implémentation avec Sablecc
TD 3 : Analyse LR TP 2 : construction de l'arbre abstrait
4 05/02/21 CM 4 : Tables des symboles
Implémentation en JAVA
TD 4 : Grammaires attribuées TP 3,4 : Construction de la table des symboles
5 12/02/21 CM 5 : Interpréteur pour le langage L TD 5 : Quadtrees
6 19/02/21 CM 6 : Code trois adresses
Implémentation en JAVA
TD 6 : Révisions TP 5 : production du code trois adresses
7 26/02/21 PARTIEL TD 7 : code trois adresses
8 05/03/21 CM 7 : Assembleur X86
Le package nasm
Appel de fonctions
Génération du pré-assembleur
La classe c3a2nasm
TD 8 : Assembleur TP 7 : production du pré-code assembleur
9 12/03/21 VACANCES
10 19/03/21 CM 8 : Graphe d'analyse
Le package fg
TD 9 : Graphe d'analyse TP 8 : Production et résolution du graphe d'analyse
11 26/03/21 CM 9 : Allocation de registres
Implémentation en JAVA
TD 10 : Coloration de graphes TP 9 : Allocation de registres
12 02/03/21 TP 10 : EVALUATION


Modalités de contrôle

Première session

PARTIELEXAMENPROJET
33,3%33,3%33,3%

Deuxième session

PARTIELEXAMENPROJET
MAX33%34%33%
0%67%33%

Le projet

Evaluation


Examens des années précédentes


Bibliographie