Rechercher Se connecter FR EN

CompilationDéveloppement et Mathématiques pour l'ingénieur (STI)

FISEFISA STI Semestre 7 Tronc Commun

Compilation

Unité d'enseignement Informatique Fondamentale · AS07_IF1  |  Code EC AS07_IF1-2
7ECTS (UE)
1Coefficient
21:20Heures

Séquencement

C TD C TD C TD C TD C TD C TD C TD C TD

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

ModuleUnité d'enseignementSemestre
Théorie des LangagesPrincipes de la programmationS5

Programme

  1. Introduction
  • Compilateur, interpréteur, machines virtuelles
  • Organisation d’un compilateur
  1. Organisation de la pile
  • Activations
  • Organisation des données
  1. Traduction dirigée par la syntaxe
  • Schémas de traduction
  • Schémas complets pour expressions, contrôle, fonctions
  1. Représentations intermédaires
  • Flot de contrôle, flot des données, forme SSA
  • Optimisation du code intermédiaire
  1. 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.VerbeDescriptionNiveau
C2_1reconnaîtrela structure générale d’un compilateur et l’organisation des données lors de l’exécution des programmes1
C2_3concevoirun compilateur pour un langage impératif3