Information Package

Master's of Computer Engineering without Thesis

BİL542

ADVANCED COMPILER DESIGN

Course Code
BİL542
Semester
-
Theory+Practice
3 + 0
ECTS
10
Course TypeElective Course
Course LevelMaster's Degree Without Thesis
Year of Study-
Semester-
ECTS10
Name of Lecturer(s) -
Learning Outcomes

At the end of this course, the students;

  1. Knowledge about the compiler, and lexical analysis.
  2. Learn the rules of syntax of programming languages.
  3. Knows the basic parsing techniques.
  4. Will have information about memory management.
  5. Learn to code generation and optimization.
Mode of DeliveryFace to face
PrerequisitesNo
Recommended Optional Programme ComponentsNone
Course DescriptionIntroduction to compilers, finite automata and lexical analysis. Syntax definitions of programming languages. Basic parsing methods. Design of efficient parsers. Symbol tables. Run-time memory management. Code generation and optimization.
Course Contents
WEEK TOPICS
1st Week Introduction to compilers, finite automata and lexical analysis.
2nd Week Introduction to compilers, finite automata and lexical analysis.
3rd Week Introduction to compilers, finite automata and lexical analysis.
4th Week Syntax definitions of programming languages.
5th Week Syntax definitions of programming languages.
6th Week Basic parsing methods.
7th Week Basic parsing methods.
8th Week Mid-term
9th Week Design of efficient parsers.
10th Week Symbol tables.
11th Week Run-time memory management.
12th Week Run-time memory management.
13th Week Code generation and optimization.
14th Week Code generation and optimization.
Recommended or Required Reading1. M. Steven S., Advanced Compiler Design İmplementation, Morgan Kaufmann Publishers Inc., 1997
2. G. Dick, Modern Compiler Design, Wiley,2001
3. Levine, Mason, Brown, Lex and Yacc, O'Reilly & Associates, 1995.
Planned Learning Activities and Teaching Methods
  • Lecture
  • Questions/Answers
  • Presentation
  • Practice
  • Problem Solving
  • Project
  • Report Preparation
Assessment Methods and Criteria
Quantity Percentage (%)
Mid-term 1 30
Assignment 1 15
Project 1 15
Total(%) 60
Contribution of In-term Studies to Overall Grade(%) 60
Contribution of Final Examination to Overall Grade(%) 40
Total(%) 100
ECTS Allocated Based on Student Workload
Activities Quantity Duration (Hour) Total Workload (Hour)
Midterm exam 1 2 2
Preparation for Quiz
Individual or group work 14 11 154
Preparation for Final exam 1 69 69
Course hours 14 3 42
Preparation for Midterm exam 1 44 44
Laboratory (including preparation)
Final exam 1 2 2
Homework
Total Work Load313
Total Work Load / 30 (h)10.43
ECTS Credit of the Course10
Language of InstructionTurkish
Work Placement(s)No
LO1 LO2 LO3 LO4 LO5
K1 X
K2 X X X X X
K3 X X X
K4 X
K5 X
K6 X
K7 X
K8 X X
K9
K10 X
K11 X X
K12 X X