本課程旨在介紹編譯器(Compilers)的工作原理與實作方式,本課程的學習者應可達到以下的目標:
1. 瞭解編譯器產生器的技術與原理,並能實作。
2. 瞭解語彙分析方法,對於簡易的程式語言,能夠實作出相關的語彙分析器.
3. 瞭解語法分析方法,對於簡易的程式語言,能夠實作出相關的語法分析器.
4. 瞭解語意分析方法,對於簡易的程式語言,能夠構建出抽象的語法分析樹,並能實作出由下而上的翻譯產生器.
5. 瞭解中介碼的產生方式,對於簡易的程式語言,可以實作出相關的中介碼產生器.
6. 瞭解目的碼的產生方式,對於簡易的程式語言,可以實作出相關的目的碼產生器.This course aims to introduce the working principles and implementation methods of compilers. Learners of this course should be able to achieve the following goals:
1. Understand the technology and principles of compiler generators and be able to implement them.
2. Understand lexical analysis methods and be able to implement relevant lexical analyzers for simple programming languages.
3. Understand syntax analysis methods and be able to implement relevant syntax analyzers for simple programming languages.
4. Understand semantic analysis methods, be able to construct abstract syntax analysis trees for simple programming languages, and implement bottom-up translation generators.
5. Understand how to generate intermediary codes, and for simple programming languages, you can implement relevant intermediary code generators.
6. Understand how object code is generated, and for simple programming languages, you can implement relevant object code generators.
A compiler is a program that translates programs written in a source language into programs written in a target language. This course introduces the principles, techniques and tools for constructing a compiler. An emphasis is also placed on a programming project that applies the techniques and tools learned from the course to implement a compiler for a small language.
A compiler is a program that translates programs written in a source language into programs written in a target language. This course introduces the principles, techniques and tools for constructing a compiler. An emphasis is also placed on a programming project that applies the techniques and tools learned from the course to implement a compiler for a small language.
Compilers: Principles, Techniques, and Tools. 2nd edition
(ISBN-10: 0321486811 and ISBN-13: 9780321486813)
本書有中文版
Compilers: Principles, Techniques, and Tools. 2nd edition
(ISBN-10: 0321486811 and ISBN-13: 9780321486813)
This book has a Chinese version
評分項目 Grading Method | 配分比例 Grading percentage | 說明 Description |
---|---|---|
期中考試期中考試 midterm exam |
25 | |
平時測驗平時測驗 usual test |
15 | |
期末考試期末考試 final exam |
25 | |
作業作業 Homework |
20 | 作業3-4次 |
專題作業專題作業 Special assignment |
10 | |
課程表現課程表現 course performance |
5 | 上課出席率、隨堂測驗、上課問答等 |