电竞比分网-中国电竞赛事及体育赛事平台

分享

精品慕課資源推薦 編譯原理

 算法與編程之美 2020-08-08

本系列精品慕課資源推薦主要向大家推薦國內(nèi)外優(yōu)秀的精品慕課資源,所有推薦資源均經(jīng)過嚴格審核,保證良好的推薦質(zhì)量。

本次向大家推薦的是計算機專業(yè)核心基礎課程《編譯原理》的慕課,該課程是由中國科技大學華保健老師主講。

編譯原理是計算機科學中歷史最悠久,也是最高度發(fā)展的學科之一。編譯器的設計與實現(xiàn)集中體現(xiàn)了計算機科學中的最核心的思想和技術,并且和計算機科學的其他研究領域,如形式語言與自動機、算法、數(shù)據(jù)結(jié)構(gòu)、程序設計語言、計算機體系結(jié)構(gòu)、軟件工程等都有非常重要的聯(lián)系。

本課程主要講授編譯器設計與實現(xiàn)中的理論和技術。主要內(nèi)容包括詞法分析、語法分析、語法樹構(gòu)造、語義分析、中間代碼生成、代碼優(yōu)化、目標代碼生成等主要內(nèi)容。編譯原理最大的特點是強調(diào)理論和實踐的結(jié)合,這也是本課程最強調(diào)的部分。在理論方面,我們將和你一起討論豐富有趣的理論知識,包括正則表達式、有限狀態(tài)自動機、形式文法、類型系統(tǒng)、數(shù)據(jù)流方程、不動點算法、格、閉包等;而且實踐部分,我們將討論如果選擇合理的數(shù)據(jù)結(jié)構(gòu)和高效的算法來實現(xiàn)這些理論,以及如何運用軟件工程中的思想來處理編譯器設計中所出現(xiàn)的種種復雜性。

該課程主要面向計算機專業(yè)相關學生、對計算機感興趣的學生、及相關技術的從業(yè)人員等。對于相關專業(yè)的學生來說,學習好編譯原理這門課,不但可以理解和掌握編譯編譯課程本身,而且對于其他相關課程的學習也會有很好的幫助。而對于計算機相關技術的從業(yè)人員,學習編譯原理相關知識,不但可以深刻理解程序設計語言的設計和實現(xiàn)原理,而且在工作中往往要設計新的領域?qū)S谜Z言及其編譯器,因此,這部分知識也是必須的。

授課大綱

小節(jié)

第一章:編譯概述

1.1 編譯器歷史

1.2 編譯器主要結(jié)構(gòu)

1.3 前后端劃分及功能

第二章:詞法分析

2.1 單詞與記號

2.2 正則表達式

2.3 有限自動機

2.4 從正則表達式到有限自動機的轉(zhuǎn)換

2.5 詞法分析器的實現(xiàn)

第三章:語法分析

3.1 上下文無關文法

3.2 遞歸下降分析

3.3 LR分析

3.4 錯誤處理

3.5 語法分析器自動生成

第四章:類型檢查

4.1 類型系統(tǒng)

4.2 屬性文法

4.3 語法制導翻譯

4.4 符號表管理

第五章:中間表示

5.1 抽象語法樹

5.2 線性中間表示

5.3 圖中間表示

第六章:中間代碼生成

6.1 變量地址分配

6.2 算術表達式翻譯

6.3 布爾表達式翻譯

6.4 數(shù)組、結(jié)構(gòu)體和字符串的翻譯

6.5 控制流的翻譯

6.6 函數(shù)調(diào)用的翻譯

第七章:目標代碼生成

7.1 目標體系結(jié)構(gòu)

7.2 樹匹配代碼生成

7.3 基于動態(tài)規(guī)劃的代碼生成

7.4 寄存器分配

7.5 指令調(diào)度

第八章:代碼優(yōu)化

8.1 控制流分析

8.2 數(shù)據(jù)流分析

8.3 死代碼刪除

8.4 常量傳播

8.5 拷貝傳播

8.6 靜態(tài)單賦值形式

參考資料

課程教師今年在中科大開設的編譯器課程主頁:

http://staff.ustc.edu.cn/~bjhua/courses/compiler/2014

課程的主要參考書:《編譯器工程》(第二版)

課程的其它參考書:《現(xiàn)代編譯器實現(xiàn)---C語言描述》

《編譯原理:技術與工具》

《高級編譯器設計與實現(xiàn)》

課程地址:http://mooc.study.163.com/course/1000002001?tid=1000003000#/info

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多