教學大綱與進度
課程基本資料:
學年期
課號
課程名稱
階段
學分
時數
修
教師
班級
人
撤
備註
110-2
301704
編譯器原理
1
3.0
3
★
王正豪
資工三
48
14
教學大綱與進度:
教師姓名
王正豪
Email
jhwang@ntut.edu.tw
最後更新時間
2022-02-14 16:06:39
課程大綱
本課程主要在研討傳統的結構化語言的編譯技術。課程所涵蓋的內容包括有: - Syntax analysis: 語句上的分析、語句分析器的製作 - Top-down parsers: 由上而下的組譯器製作 - Bottom-up parsers: 由下而上的組譯器製作 - Semantic analysis: 語意分析 - Code generation: 機器碼之產生與暫存器之配置 - Optimization 程式碼最佳化處理。 課程的進行,將以基本編譯技術為主,作深入的介紹。學習所得的觀念與技術,將利用一個實驗性語言編譯器的實作來貫穿。因此,程式規畫實作將在這個課程中佔有相當大的比重。
課程進度
1. Introduction (1 wk) 2. A Simple Syntax-Directed Translator (2 wks) 3. Lexical Analysis (2 wks) 4. Syntax Analysis (2 wks) 5. Syntax-Directed Translation (1 wk) 6. Intermediate Code Generation (2 wks) 7. Run-Time Environments (2 wks) 8. Code Generation (3 wks) 9. Term Project/Paper Presentation (3 wks)
評量方式與標準
Homework assignments and programming exercises: 40% Mid-term exam: 25% Final project or presentation: 35%
使用教材、參考書目或其他
【遵守智慧財產權觀念,請使用正版教科書,不得使用非法影印教科書】
使用外文原文書:是
Textbook: - Crafting a Compiler with C, by Charles N. Fischer and Richard J. LeBlanc Jr., Addison-Wesley, 1991. References: - Compilers: Principles, Techniques, and Tools, 2nd ed., by Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman, Addison-Wesley, 2007. (a.k.a ''The Dragon Book'') - Charles N. Fischer, Ron K. Cytron, and Richard J. LeBlanc Jr., Crafting a Compiler, Global Edition, Pearson Education, Inc., 2009. References: - Engineering a Compiler, by Keith D. Cooper and Linda Torczon, Morgan Kaufmann, 2004. 其他資料,請見課程網頁: https://myweb.ntut.edu.tw/~jhwang/Compiler/
課程諮詢管道
課程對應SDGs指標
備註
1. 課程相關訊息將透過以下管道公布: 北科i學園、Teams、或課程網頁。
2. 若學校因應疫情改採遠距教學,將使用Teams上課 (帳號: 學號@cc.ntut.edu.tw)。
3. 如果你尚未被加入本課程之Teams團隊,歡迎來信: jhwang@mail.ntut.edu.tw,並註明課程名稱與你的班級、姓名。