《编译原理》实验教学大纲
《編譯原理》實驗教學大綱
課程編號: 773033
課程名稱:編譯原理
英文名稱:Compiler Principle
課程類型: 模塊課
學 時:5
學 分:4
適用對象: 軟件開發各專業方向
先修課程:程序設計、計算機組成原理、數據結構、操作系統
一、課程性質、目的和任務
《編譯原理》課程是計算機科學與技術專業的一門重要專業課。本課程系統講述程序設計語言的編譯程序的概念、構造、以及實現的主要算法和技術。通過本課程的學習,使學生掌握編譯程序的前三個邏輯階段:在詞法分析中,深入理解正規表達式與有限自動機的理論和不確定的有限自動機轉化為確定有限自動機的方法;在語法分析中,理解上下文無關方法的概念,掌握自上而下分析和自下而上分析的方法,深入理解消除左遞歸、消除回溯、提取左因子的方法和LL(1)分析法;在語義分析和中間代碼生成中,掌握屬性文法和語法制導翻譯的基本思想、中間代碼的格式和語句翻譯的方法。了解編譯程序的后兩個階段:優化和目標代碼生成。除此之外,還需對符號表管理以及運行時存儲空間組織的管理方法加以了解。為今后從事編譯及其他有關軟件的研究和開發工作打下較為堅實的基礎。
二、教學基本要求
通過本課程的學習,應使學生達到以下基本要求:
1、正確理解什么是編譯程序,掌握編譯程序工作的基本過程及其各階段的基本任務,熟悉編譯程序總體框架,了解編譯程序的生成過程和構造工具。
2、熟悉并掌握上下文無關文法基本概念,包括:文法的定義、編寫、句型、句子、語言、語法樹、二義性等,理解三種參數傳遞方式:傳值、傳地址、傳名的含義。
3、熟悉并掌握詞法分析器功能及形式、詞法分析器設計的原理、狀態轉換圖的原理及使用方法。
4、熟悉并掌握自上而下分析的基本思想、遞歸下降分析的基本方法、消除左遞歸和回溯的方法、構造遞歸下降子程序的方法,預測分析程序的基本原理和預測分析表的構造方法、LL(1)方法。
5、熟悉并掌握自下而上語法分析的基本思想以及歸約、短語、句柄、分析樹等概念,掌握算符優先分析基本方法,算符優先表和和算符優先函數構造技術。
6、熟悉并掌握語法制導翻譯基本原理、基于屬性文法的處理方法、自上而下分析制導翻譯基本思想和實現方法。
7、掌握常見的幾種中間語言:四元式、三元式、逆波蘭表示,掌握各種語句到四元式的翻譯方法,包括簡單算術表達式,布爾表達式,控制語句,數組引用,過程調用等。
8、理解符號表的作用及符號表組織和使用方法,了解名字的作用范圍,了解符號表中一般應包含的內容。
三、實驗內容及要求
大綱基本內容包括5個必做的實驗內容,在規定的16個學時內完成。
實驗一 小型詞法分析器的設計(設計性實驗,2學時)
編寫一個小型詞法分析器,對于輸入的一段英語文本,可以統計:
(1)該文本中有多少英語單詞,并把每個單詞都列出來;
(2)該文本中有多少不同的英語單詞,并把不同的單詞都列出來。
實驗二 小型詞法分析器的設計(設計性實驗,2學時)
編寫兩個小型語法分析器,對于輸入的數學表達式,可以獲取其中的運算數和運算符;對于輸入的一段程序,可以獲取該程序的單詞符號。作業要求:
(1)了解該語言的單詞符號;
(2)為單詞符號構造對應的狀態轉換圖;
(3)根據狀態轉圖的結構進行計算機實現。
實驗三 小型語法分析器的設計(設計性實驗,4學時)
對于給定的文法,采用遞歸下降分析程序構造方法為其實現一個小型語法分析器。該分析器能夠對于給定的輸入,按照先后順序將使用的產生式輸出。如果輸入語法正確,則輸出正確結果;如果輸入語法錯誤,則報錯。
實驗四 小型語法分析器的設計(設計性實驗,4學時)
對于給定的文法,采用算符優先分析算法為其實現一個小型語法分析器,該分析器能夠對于給定的輸入,輸出算法優先分析步驟。如果輸入語法正確,則輸出正確結果;如果輸入語法錯誤,則報錯。(選做題:設計一個小型公式編輯器的上下文無關文法,并進行自上而下分析的實現。)
實驗五 小型編譯程序的設計(設計性實驗,4學時)
根據給定的算術表達式的文法,利用翻譯模式,制作可編程計算器。要求考慮
(1)語法正確與否問題;
(2)整形和浮點型問題;
(3)除數為0問題。
(選做題:將語義分析納入到小型公式編輯器中,并將小型公式編輯器實現出來。)
四、考核方式
劃分小組,作業考核采取小組組長和任課教師共同檢查的制度。
五、推薦教材和教學參考書
教 材:
《程序設計語言編譯原理 (第3版)》,陳火旺、劉春林編著,國防工業出版社,2007年。
參考書目:
(1)陳意云、張昱,編譯原理(第3版),高等教育出版社, 2014
(2)陳意云、張昱,編譯原理習題精選與解析(第3版),高等教育出版社,2014
(3)Alfred V.Aho,編譯原理,機械工業出版社,2009
(4)Alfred V.Aho, Ravi Sethi, Jeffrey D.Ullman, 編譯原理 技術與工具(英文版), 人民郵電出版社 ,2002
(5)Louden, K.C, 編譯原理及實踐(英文版), 中信出版社 ,2004
大綱制訂人:
大綱審定人:
制訂日期:
總結
以上是生活随笔為你收集整理的《编译原理》实验教学大纲的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《编译原理》课程教学大纲
- 下一篇: 编译原理教学日历