Your transaction is in progress.
Please Wait...
Course Details
KTO KARATAY UNIVERSITY
Mühendislik ve Doğa Bilimleri Fakültesi
Programme of Computer Engineering
Course Details
Course Code Course Name Year Period Semester T+A+L Credit ECTS
05071350 Compiler Desıgn 4 Autumn 7 3+0+0 3 5
Course Type Elective
Course Cycle Bachelor's (First Cycle) (TQF-HE: Level 6 / QF-EHEA: Level 1 / EQF-LLL: Level 6)
Course Language Turkish
Methods and Techniques -
Mode of Delivery Face to Face
Prerequisites -
Coordinator -
Instructor(s) Assoc. Prof. Ali ÖZTÜRK
Instructor Assistant(s) -
Course Instructor(s)
Name and Surname Room E-Mail Address Internal Meeting Hours
Assoc. Prof. Ali ÖZTÜRK A-127 [email protected] 12 Thursday
14.00-15.00
Course Content
This course explains the methods used to translate students from formal language to another formal language. The course describes the steps used from the scanner step to the design and development of the parser. In addition, the course provides information on semantic analysis and local and global compiler optimization. During the course, each student is expected to design a simple compiler using lex and yacc software tools
Objectives of the Course
The aim of this course is to provide students with knowledge and skills in compiler design and development.
Contribution of the Course to Field Teaching
Basic Vocational Courses
Specialization / Field Courses
Support Courses X
Transferable Skills Courses
Humanities, Communication and Management Skills Courses
Course Learning Outcomes
Upon the successful completion of this course, students will be able to:
No Learning Outcomes Outcome Relationship Measurement Method **
O1 Knows the applications of mathematics in engineering P.1.4
O2 Knowledge of algorithm design and analysis techniques. P.3.1 1
O3 Conducting software tests according to norms. P.2.20 7
O4 Predictive modeling P.2.21 1,7
** Written Exam: 1, Oral Exam: 2, Homework: 3, Lab./Exam: 4, Seminar/Presentation: 5, Term Paper: 6, Application: 7
Weekly Detailed Course Contents
Week Topics
1 Introduction to Compilers
2 Scanners (Regular Languages, Lexical Features)
3 Separators (Cfgs, Decomposition Tree, Top-Down.
4 Context Sensitive Analysis
5 Midterm
6 Interim Representations
7 Procedure Abstraction
8 Code Format, Optimizations I (Local Optimizations)
9 Optimizations II (Global Optimizations)
10 intermediate representations II
11 Target Code Generation
12 Machine Independent Code Optimization
13 Command Level Parallel Processing
14 Final
Textbook or Material
Resources Aho, Sethi, Ullman, "Compilers: Principles, Techniques, and Tools 2E", Addison-Wesley, 2006
Evaluation Method and Passing Criteria
In-Term Studies Quantity Percentage
Attendance - -
Laboratory - -
Practice - -
Course Specific Internship (If Any) - -
Homework - -
Presentation - -
Projects - -
Quiz - -
Midterms 1 40 (%)
Final Exam 1 60 (%)
Total 100 (%)
ECTS / Working Load Table
Quantity Duration Total Work Load
Course Week Number and Time 14 3 42
Out-of-Class Study Time (Pre-study, Library, Reinforcement) 14 5 70
Midterms 1 3 3
Quiz 0 0 0
Homework 0 0 0
Practice 0 0 0
Laboratory 0 0 0
Project 0 0 0
Workshop 0 0 0
Presentation/Seminar Preparation 0 0 0
Fieldwork 0 0 0
Final Exam 1 3 3
Other 0 0 0
Total Work Load: 118
Total Work Load / 30 3,93
Course ECTS Credits: 4
Course - Learning Outcomes Matrix
Relationship Levels
Lowest Low Medium High Highest
1 2 3 4 5
# Learning Outcomes P1 P2 P3
O1 Knows the applications of mathematics in engineering 4 - -
O2 Conducting software tests according to norms. - 5 -
O3 Predictive modeling - - 3
O4 Knowledge of algorithm design and analysis techniques. 2 - -