CMP2 - Construction des Compilateurs 2 : Partie Terminale. Akim Demaille, Roland Levillain.

Public: Tronc-commun

Volume: 14H

Comprendre la traduction de langages, les optimisations. Mieux comprendre quand on peut avoir confiance dans du code généré/traduit automatiquement par rapport à du code écrit à la main.

Contexte
Le compilateur est l'interface principale du programmeur vers la machine. On ne peut pas être un bon programmeur sans savoir d'un côté comment fonctionne un ordinateur (cours d'architecture, de système, d'assembleur, etc.) et de l'autre le langage de commande (cours de d'algorithmie, de C, C++, Eiffel, etc.). Sans une bonne connaissance des compilateurs ---le pont entre le programmeur et la machine-- cette connaissance est illusoire et donne lieu à des « mythes urbains de programmeurs ». Ce cours vise à démythifier la théorie de la compilation en couvrant dans le détail le fonctionnement de l'intégralité d'un compilateur. À l'issue de cet enseignement les étudiants comprennent mieux leurs outils pour devenir de meilleurs ingénieurs du logiciel.

Contenu:

  • Langages Intermédiaires
  • Passages d'Arguments
  • Variables non locales
  • Les Microprocesseurs : CISC, RISC, VLIW
  • Sélection des Instructions
  • Flot d'exécution
  • Vivacité des variables
  • Allocation des Registres

CourseForm
Titre: Construction des Compilateurs 2 : Partie Terminale
Sigle: CMP2
Enseignant: Akim Demaille, Roland Levillain
Période: S2
Public: Tronc-commun
Contrôle: Partiel
Durée: 14H
Cours Optionnel: non
Module:  
Prérequis: CMP1-Course
Objectifs: Comprendre la traduction de langages, les optimisations. Mieux comprendre quand on peut avoir confiance dans du code généré/traduit automatiquement par rapport à du code écrit à la main.
Documentation: http://www.lrde.epita.fr/~akim/ccmp/, Modern Compiler Implementation by Andrew Appel
Journal: CompilationLecture2005,
CompilationLecture2006,
ConstructionDesCompilateursLecture2007,
CcmpLog2008,
CcmpLog2009,
CcmpLogIng2010 (Ing1 students), CcmpLogAppIng2010 (AppIng1 students)
CcmpTylaLogIng2011 (Ing1 students), CcmpTylaLogAppIng2011 (AppIng1 students)
CcmpTylaLogIng2012 (Ing1 students), CcmpTylaLogAppIng2012 (AppIng1 students)

Revision: r1.20 - 01 Jun 2010 - 09:04 - RolandLevillain
Epita > CourseList > CMP2-Course
Copyright © 1999-2010 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback