Presentation´ du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS Franc¸ois Pottier 5 janvier 2011 Franc¸ois Pottier Compilation (INF 564)Presentation´ du cours Le processeur MIPS Programmation du MIPS 2 Presentation´ du cours Le processeur MIPS Programmation du MIPS Franc¸ois Pottier Compilation (INF 564)Presentation´ du cours Le processeur MIPS Programmation du MIPS 3 Qu’est-ce qu’un compilateur? Un compilateur traduit un langage de haut niveau (adapte´ a` l’esprit humain) vers un langage de bas niveau (conc¸u pour etreˆ execut´ e´ efficacement par une machine). Franc¸ois Pottier Compilation (INF 564)Presentation´ du cours Le processeur MIPS Programmation du MIPS 4 Aperc¸u du cours I En 9 seances,´ ecrivons´ un compilateur d’un langage source modeste (sous-ensemble de Pascal et C) vers un langage assembleur (MIPS). I Chaque cours expose une des phases du compilateur. Le TP qui suit permet d’aborder la pratique devant la machine. Franc¸ois Pottier Compilation (INF 564)Presentation´ du cours Le processeur MIPS Programmation du MIPS 5 Pourquoi suivre ce cours? I pour ecrire´ un programme complexe et el´ egant´ dans un langage de tres` haut niveau (Objective Caml); I pour comprendre le fosse´ entre l’intention humaine et le langage de bas niveau execut´ e´ par le microprocesseur; I pour decouvrir´ des techniques et algorithmes d’usage gen´ eral´ : analyse lexicale, analyse syntaxique, transformation d’arbres ...
Un compilateurtraduit a` l’espritun langage de haut niveau (adapte´ humain)versunlangagedebasniveau(con¸cupourˆetreexe´cut´e efficacement par une machine).
Inces,En9s´eapmoctaliovirnusn´ecreud’un langage source modeste (sous-ensemble de Pascal et C) vers un langage assembleur (MIPS). IChaque cours expose une des phasesdu compilateur. Le TP qui suit permet d’aborder la pratique devant la machine.
Ieunpcrirur´epomaemorrgcomplexeettanegl´´edans un langage de tre` s haut niveau (Objective Caml) ; Ipour comprendre lefosse´entre l’intention humaine et le langage debasniveauex´ecute´parlemicroprocesseur; I couvrir despour de´techniquesetalgorithmesrela:ageg´en´d’us analyse lexicale, analyse syntaxique, transformation d’arbres de syntaxeabstraite,analysedeflotdedonn´ees,allocationde registres par coloriage de graphe, etc.
Ic’estbeau !des maths, et en plus c¸a tournecomme Ic¸a demande dutravail: Ion demande de finir chez soi chaque TP ; Iil n’y a pas de poly : venez en cours !
Un compilateur, ...
)4
Attention !
FN65noI(latiompiierCPottsio¸cnarF
Pr´esentationducours ProgrammationLe processeur MIPS du MIPS
Defac¸onre´pe´t´ee,leprocesseurlitl’instructionstock´ee`al’adressepc (fetch), l’analyse (decode), puis l’interpre` te (execute), ce qui peut avoir pour effet de modifier certains registres (dont pc) et/ou la me´ moire.