Compilation (INF 564) - Introduction & architecture MIPS
47 pages
Français

Compilation (INF 564) - Introduction & architecture MIPS

-

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
47 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

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 ...

Sujets

Informations

Publié par
Nombre de lectures 202
Langue Français

Extrait

Pr´esentationduocruLspeorecssueIPrMroSPamgrtimaudnoSPIM1cno¸sioPFarpilationttierCom
Compilation (INF 564)
Introduction & architecture
MIPS
5 janvier 2011
Fran¸coisPottier
FNI()465
rFna¸cioPs465FNI(n
Le processeur MIPS
Pre´ sentation du cours
Programmation du MIPS
)Coertiotioatilmpneat´rsePeproursLducotionrgorPSPIMruessec2PSMIduontimaam
ioatINn(64F5
Qu’est-ce qu’un compilateur ?
Un compilateurtraduit a` l’espritun langage de haut niveau (adapte´ humain)versunlangagedebasniveau(con¸cupourˆetreexe´cut´e efficacement par une machine).
)Franc¸ioPstoitreoCpmliitnoneatruLsudocr´esPontiMIdugrromaamMruePSPIorpessecSP3
rPSPIMruessecorpIPuMndioatmmraoge´esrPrsLeucouiondntat4Son(IlatiompiierCoPtto¸siarcnF
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.
65FN
Aper¸cuducours
)4
eprocessducoursLorrgmaamueMrPIPS5PSontiMIduomrCiettontilapiarFoPsio¸cn65)4I(FN
Pourquoi suivre ce cours ?
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´dus analyse lexicale, analyse syntaxique, transformation d’arbres de syntaxeabstraite,analysedeotdedonn´ees,allocationde registres par coloriage de graphe, etc.
entationPr´es
SPIPgrrosscerMeuIMud6SPammanoitr´esentaPruLspeoritnoudoc
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
Un
compilateur
de
Pseudo-Pascal
Franc¸ois
Pottier
vers
Compilation
(INF
MIPS
564)
7
Pse´recsspeorPIPSueMrtionentaursLduco8SPmaamgrroMIduontinarF
2. de tationSyntaxe, semantique et interpre´Pseudo-Pascal. ´
3.Analyse lexicale etsyntaxique(du texte source vers PP).
Plan du cours
1.ArchitectureMIPS.
6.Explicitation de laconvention d’appel(de RTL vers ERTL).
7.Analyse de de viedure´ e(sur ERTL).
4.Typage.Sle´eioctindrtsnitcusno(de PP vers UPP).
5.itnoudCr´eatronectdleˆorgpaehedo(de UPP vers RTL).
8.Coloriage de grapheet allocation des registres (de ERTL vers LTL).
9.iL´nonsatiearidu code (de LTL vers LIN) puis des tramesre´ alisationde pile (de LIN vers ASM).
litaoi(nNI5F46)c¸oisPottierComp
Le processeur MIPS
Presentation du cours ´
Programmation du MIPS
)465atntndioPrse´euMIPiondS9LersouucseesocprrPSPIMrutammargoFranc¸oisPottieCrmoipalitnoI(FN
na¸crF
Du point de vue du programmeur ou du compilateur, un ordinateur est constitu ´e principalement d’unprocesseuret d’uneme´ moire.
Architecture d’un ordinateur
)465FNI(noitailmpCoertiotsPoiLspeocrunoudatitSProrMIPsseuroceenesr´PudnoSPIMmargitam10
PS11maamorrgudIMitnoPr´esroepsscerMeuSPIPatnenoitocudLsru(Ion56NF
Le processeur
4)
Defac¸onre´pe´t´ee,leprocesseurlitlinstructionstock´ee`aladressepc (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.
Leprocesseurestcapabledelireetd´ecriredesinformationsen me´moire.Ildispose´egalementdunpetitnombredemplacements me´moireplusrapides,appel´esregistres.
Lesinstructionsuqiode´xetutecleerocprseesruostnleel-sˆmmees stock´eesenm´emoire.Unregistresp´ecialnomm´epccontientl’adresse delaprochaineinstruction`aex´ecuter.
ttoPCreiipmoitalFranc¸ois
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents