編譯原理學習總結


第一章

是基本概念,讀完這一章是為了有個基本了解,這一章是很容易順利讀完的

第二章

這一章介紹了書中很多重要的東西。這一章雖然也有些難理解的地方,但是跟后面比還是容易很多,很多東西都很基本,對編譯系統有個基本的理解。

第三章 詞法分析

相比較語法分析,詞法分析相對比較簡單,就是一個自動機系統,學完這一章最基本應該把NFA、DFA概念理解,並能夠將NFA轉換為DFA,能將正則表達式轉換為NFA,並可以使用lex生成簡單的詞法分析器。

第四章 語法分析

到目前為止最難的一章,據說很多自學的人都是讀到這一章放棄的。學完這一章應該有了語法分析的概念,並理解語法分析的局限性,比如變量先聲明后使用時沒法通過語法定義的,但是相對詞法分析,語法可以表示的東西已經多了很多。

lex和yacc是學習編譯原理很重要的部分,可以自動生成分析代碼,但是默認編譯對裝換表做了優化,用幾個一維表代替正常的二維表

實際應用中的編譯器通常會選擇二義性文法和根據運算符的優先級來生成的文法,因為這樣的文法相對比較簡單

第五章 語法制導的翻譯

 

這一章在語法分析中加入翻譯代碼,主要講了2個概念:
SDD:語法制導定義,由一個上下文無關文法和屬性及規則組成
SDT:語法制導翻譯,是在其產生式體內嵌入了程序片段的一個上下文無關文法

 

第六章 中間代碼生成

這一章講了三地址中間代碼的表示方法和程序中大部分內容的三地址表示方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM