Home - Students - My Studies - Courses - C - Content

Compiler

Course Name (Chinese):编译原理

(English): Compiler

Course Name: Compiler

Course Code:S2298144

Semester: 4, 2

Credit:3

Program: Computer Science

Course Module: Specialized Compulsory

Responsible: Marc Gaetano

E-mail: marc.gaetano@gmail.com

Department: School of Computer Science & Technology, Tianjin University

Time Allocation (1 credit hour = 45 minutes)

Exercise

Lecture

Lab-study

Project

Internship (days)

Personal Work

10

16

22



8

Course Description

The course is a required course designed for Engineering Master of Computer Science in TIEI. This course introduces the principle of compilers from the viewpoint of software systems, and comprehensively analyzes compilers’ basic concepts, principles, structure and algorithms. This course seeks to fully contain the research of compiler technology and automata theory, so that, students can grasp the compiler construction principles and have some formal language theory.

Prerequisite

Ÿ Basic programming knowledge: the ability to write programs independently,

Ÿ Assembly Language: the ability to control hardware system.

Course Objectives

This course discusses basic concepts of compiler theory to help students enhance their professional skills. After this course, students should be able to:

Ÿ Clarify the origin of compiler techniques and the position in computer technology,

Ÿ Understand and master the technical content of the compiler according to its system architecture,

Ÿ Focus on analyzing the principles of compiler technology, and master the algorithm of design and implementation,

Ÿ Preliminary understand the basic principles of automata theory and the corresponding algorithms,and to

Ÿ Initialiyestablish a systematic, standardized compiler design.

CourseSyllabus

Ÿ Introduction to compiler theory: compilation process, compiling program.

Ÿ High-level language and grammar: definition of grammar and language, sentence analysis.

Ÿ Lexical analysis: design of the lexical analysis program, word description tool, finite automaton.

Ÿ Top-down syntax analysis: LL (1) grammar discrimination, indeterminate top-down syntax analysis, deterministic top-down syntax analysis.

Ÿ Bottom-up parsing method: simple priority analysis, operator priority analysis.

Ÿ Syntax-Directed Translation: attribute grammars.

Ÿ Run-time environment: different methods of data use and management of space, parameter passing.

Textbooks & References

Ÿ Aho A V, Lam M S, Sethi R.Compilers: Principles, Techniques, and Tools(2nd ed). Addison Wesley, 2007.

Ÿ Cooper K, Torczon L.Engineering a compiler. Elsevier, 2011.

Ÿ Waite, William M, and Gerhard Goos.Compiler construction. Springer Science & Business Media, 2012.

Ÿ Bauer, Friedrich L. Compiler construction: an advanced course. Springer, 2013.

Capability Tasks

CT1:To be able to analyze and synthesize relevant knowledge by learning compiler theory.

CT2:To understand the basic concepts and relations of compiler theory; Grasp the concept and application of different methods.

CT11:To evaluate themselves, master their abilities, and choice career.

CS1:To master the basic theoretical knowledge of compiler theory; Understand the current situation and development trend of compiler theory.

CS2:To grasp core knowledge of compiler theory and related knowledge of engineering technology; Able to apply core knowledge and knowledge of engineering technology to system development.

Achievements

Ÿ To understand the origin and the position of compiler technology in computer technology. - Level: N

Ÿ To master the technical content of the compiler. - Level: M

Ÿ To master the principles of compiler technology and the corresponding algorithm of design and implementation. - Level: M

Ÿ To understand the basic principles of automata theory and the corresponding algorithm. - Level: A

Students:Computer Science,Year 1, 2

Assessment:

Exam

Assignment

Report

Term Paper

Presentation

Others




Language of assessment:English

Attendance 0 % Homework: 40 %

Mid-term report/test 0 % Final report/test 60 %