複製鏈接
請複製以下鏈接發送給好友

編譯原理

(中南大學建設的慕課)

鎖定
編譯原理課程是中南大學建設的慕課、國家精品課程。該課程於2019年10月29日首次在中國大學MOOC開課,授課教師為陳志剛、漆華妹、瀋海瀾、姚鑫。據2021年8月中國大學MOOC官網顯示該課程已運行2學期。 [1-2] 
編譯原理課程共八章,包括代碼優化、語法分析、程序語言、語義分析和中間代碼生成、屬性文法和語法翻譯製導等內容。 [2] 
中文名
編譯原理
外文名
COMPILATION PRINCIPLE
類    別
慕課、國家精品課程
授課平台
中國大學MOOC
開課時間
2019年10月29日(首次)
授課教師
陳志剛、漆華妹、瀋海瀾、姚鑫
建設院校
中南大學

編譯原理課程性質

編譯原理課程定位

編譯原理課程是計算機、軟件專業設置的一門專業基礎核心課程。通過對編譯程序的結構及其各組成部分的設計原理與實現技術等內容的學習,使學習者掌握編譯程序的基本原理、方法和實現技術,瞭解程序語言的內部機制、計算機軟硬件系統的基本架構與工作原理,培養學習者設計、實現和分析簡單編譯軟件的能力。 [2] 

編譯原理適應對象

編譯原理課程適合計算機相關各專業的在校學生和從事計算機、軟件工作人員學習。 [2] 

編譯原理課程簡介

編譯原理課程共八章,第一章介紹高級程序語言等知識點;第二章講述文法的形式化定義和分類等內容;第三章介紹狀態轉換圖等知識點;第四章講述FIRST集、FOLLOW集的構造等內容;第五章介紹算符優先分析算法、符號棧的使用等知識點;第六章講述屬性文法的自上而下的計算等內容;第七章介紹布爾表達式的作用和文法描述、算術表達式和賦值語句等知識點;第八章講述基本塊DAG及應用、基本塊及流圖等內容。 [2] 

編譯原理課程大綱

第一章 緒論
課時
1.1課程簡介
1.2編譯過程
1.3高級程序語言簡介
第二章 程序語言概論
課時
2.1程序語言的定義
2.2文法的形式化定義和分類
2.3文法和語言
2.4語法分析樹
2.5小結
第三章 詞法分析
課時
3.1詞法分析概述
3.2.1狀態轉換圖
3.2.2小結
3.3.1正規式與正規集
3.3.2確定有限自動機
3.3.3非確定有限自動機
3.3.4正規式和有限自動機的等價性
3.3.5DFA的化簡
3.4.1詞法分析器的自動生成
3.4.2詞法分析程序實現實例
3.4.3小結
第四章 語法分析
課時
4.1語法分析簡介
4.2自頂向下分析簡介
4.3.1消除左遞歸和回溯
4.3.2LL分析法的工作過程
4.3.3FIRST集和FOLLOW集的構造
4.3.4LL分析表的構造
4.4.1遞歸子程序的原理
4.4.2遞歸下降分析程序構造
第五章 自下而上分析
課時
5.1.1自下而上分析方法的基本思想
5.1.2分析樹與規範規約
5.1.3符號棧的使用
5.2.1算符優先文法
5.2.2優先表構造
5.2.3算符優先分析算法
5.3.1LR分析器
5.3.2LR分析過程1
5.3.2LR分析過程2
5.3.3構造識別活前綴的DFA
5.3.4LR項目集規範族構造
5.3.5 由DFA構造LR分析表
5.3.6SLR分析法的思想
5.3.7SLR分析表的構造
5.3.8二義文法的使用
第六章 屬性文法和語法翻譯製導
課時
6.1屬性文法的定義
6.2語法制導翻譯
6.3屬性文法的自上而下的計算
6.4屬性文法和自頂向下翻譯
6.5自下而上計算繼承屬性
6.6小結
第七章 語義分析和中間代碼生成
課時
7.1語義分析的任務
7.2中間代碼形式
7.3算術表達式和賦值語句
7.4.1布爾表達式的作用和文法描述
7.4.2做控制用布爾表達式的翻譯
7.5.1控制流語句的翻譯
7.5.2控制流語句的翻譯
第八章 代碼優化
課時
8.1什麼是代碼優化
8.2基本塊及流圖
8.3基本塊DAG及應用1
8.4基本塊DAG及應用2
(注:課程大綱排版從左到右排列 [2] 

編譯原理開課信息

開課次數
開課時間
授課老師
學時安排
參與人數
第1次開課
2019年10月29日-2020年01月21日
陳志剛、漆華妹、瀋海瀾
3-5小時每週
2184
第2次開課
2020年02月25日-2020年05月31日
陳志剛、漆華妹、瀋海瀾、姚鑫
4582
(注:表格內容參考資料 [1-2] 

編譯原理教學目標

1、瞭解計算機高級語言源程序被計算機接受、掃描、詞法分析、語法分析、語義解釋執行的原理與過程;
2、掌握編譯的原理和基本算法、各種概念和語言描述。 [2] 

編譯原理學習預備

編譯原理預備知識

學習編譯原理課程需要掌握計算機程序設計語言和程序設計知識及瞭解微機原理、組成原理、數據結構、離散數學以及操作系統等知識。 [2] 

編譯原理學習資料

書名
作者
出版時間
出版社
《程序設計語言編譯原理》
陳火旺
2014年
《編譯原理(第3版)》
陳意雲、張昱
(注:表格內容參考資料 [2] 

編譯原理考核標準

編譯原理課程滿分100分,主要通過平時測驗評定。
(1)單元測驗佔60%
每週兩講,每講1次測試,每次測試5題(題型均為客觀題),每題0.6分,20講共計60分。
(2)期末考試佔30%
期末考試50題,每題0.6分(題型均為客觀題),共計30分。
(3)課程討論佔10%
“課堂交流區”中的討論成績佔總成績的10%。學生需要在“課堂交流區”中選擇至少5個討論題目進回覆,則獲得討論分10分。
60-85分可以申請合格證書,85分及以上可以申請優秀證書。 [2] 

編譯原理所獲榮譽

2009年10月17日,編譯原理課程被中華人民共和國教育部認定為“國家精品課程”。 [3] 

編譯原理教師簡介

陳志剛中南大學計算機學院黨委書記、教授,承擔編譯原理、軟件開發技術等課程教學工作。 [4] 
漆華妹,中南大學計算機學院副教授,從事無線網絡、物聯網、5G通信、機器學習等方面研究工作。 [5] 
瀋海瀾,中南大學計算機學院副教授,從事機器學習、醫學圖像分析、個性化推薦等方面研究工作。 [6] 
姚鑫,中南大學計算機學院講師,從事物聯網、社交網絡等領域的安全和隱私保護等方面研究工作。 [7] 
參考資料