• Your selection is empty.

    Register the diplomas, courses or lessons of your choice.

Compilation

  • School / Prep

    ENSEIRB-MATMECA

Internal code

EI7IF203

Description

Presentation of standard techniques and tools for compiling programming languages and for implementation in the [[m:IF204]] project.
Plan
0. Purpose of a compiler, why study compilation 1. Regular expressions and regular languages, a few reminders 2. Algebraic languages, reminders about grammars 3. Syntax analyzers implemented in a tool (Yacc) 4. Semantic analysis: attributed grammars, computation of attributes such as types and code5. Code generation: for a stack machine, for a register machine. Main translation schemes, memory allocation 6. Optimization problems: register allocation, code optimization, etc. 7. Final compilation phases: assembler, linker, loader.
Skills
C2. Level 2C3. Level 2C4. Level 2

Read more

Teaching hours

  • CMLectures9,33h
  • TDTutorial14h
  • TIIndividual work18h

Mandatory prerequisites

Regular expressions, based on grammars and a good knowledge of C.

Read more

Syllabus

0. Purpose of a compiler, why study compilation 1. Regular expressions and regular languages, a few reminders 2. Algebraic languages, reminders about grammars 3. Syntax analyzers implemented in a tool (Yacc) 4. Semantic analysis: attributed grammars, computation of attributes such as types and code5. Code generation: for a stack machine, for a register machine. Main translation schemes, memory allocation 6. Optimization problems: register allocation, code optimization, etc. 7. Final compilation phases: assembler, linker, loader.

Read more

Bibliography

Standard compilation courses and books

Read more

Assessment of knowledge

Initial assessment / Main session - Tests

Type of assessmentType of testDuration (in minutes)Number of testsTest coefficientEliminatory mark in the testRemarks
Final inspectionWritten1201documents allowed without calculator

Second chance / Catch-up session - Tests

Type of assessmentType of testDuration (in minutes)Number of testsTest coefficientEliminatory mark in the testRemarks
Final testWritten1201documents allowed without calculator