CMPE425
Compiler Design
Course Information
Faculty | Faculty of Engineering |
Course Code | CMPE425 |
Course Title | Compiler Design |
Language of Instruction | English |
Course Semester | Spring |
Course Hours | Lecture: 3, PS:0, Labs: 0 |
Course Credits | 3 |
ECTS | 6 |
Grading Mode | Letter Grade |
Prerequisites | CMPE 260 |
Corequisites | None |
Catalog Description
Overview of the compilation process. Lexical analysis, regular expressions, finite automata and lexical analyzer generators. Symbol tables. Grammars. Top-down and bottom-up syntax analysis. Recursive-descent. SLR, canonical LR, LALR and operator precedence parsing techniques. Parser generators. Semantic analysis and attribute grammers. Abstract machines ad intermediate code. Syntax directed translation schemes. Implementation of a compiler for a simple imperative language.
Course Learning Outcomes
- Introduce process of compilation, components of a compiler
- Establish the relationship between the program written in high level language and its realization as a sequence of machine instructions
- Introduce the concepts of lexical analysis and parsing and their implementation strategies
- Enable the student to design and implement compilers for simple languages
- Enable the student to use compiler construction tools lex, yacc and LLVM