編譯原理 部分名詞解釋


翻譯程序:是指這樣的程序能夠把某一種語言程序(源語言程序)轉化成另一種語言程序(目標語言),而后者與前者在邏輯上是等價的
編譯程序:源語言是諸如Java、C、Ada、Pascal這樣的“高級語言”,目標語言是諸如匯編語言的“低級語言”,這樣的一個翻譯程序就稱為編譯程序
編譯程序的工作一般可以划分為5個階段:
 詞法分析、語法分許、語義分析及中間代碼的生成、優化、目標代碼生成
 
編譯程序各個階段之間的關系: 
 下一階段將上一階段的結果進行處理
 
程序語言主要由語法、語義兩方面定義
高級程序語言是用來描述算法和計算機實現的雙重目的
語法分析樹(語法樹)是對句子的描述
文法描述語言的語法規則
上下文無關文法G包括四個組成部分: 
 終極符號,非終結符號(大寫符號),開始符號,產生式
 
箭頭“→”讀作“定義為”,直豎“|”讀作“或”,它們都是源語言符號
句型:由終結符號和非終結符號組成的文法
句子:僅含終極符號的句型
語言:由文法產生的所有句子組成
最左推導是指:對於任何a ==> b,都對a的最左非終結符號進行迭代
如果一個文法存在一個句子對應兩棵不同的語法樹,則稱這個文法是二義的
二義文法:
 1、最左端是一個非終結符號
 2、左邊的個數≤右邊的個數
 
確定有限自動機(DFA),非確定有限自動機(NFA)
一個LEX源程序主要包括兩部分
 1、正規定義式
 2、識別規則
 
閉包:由集合中的元素組成的無數多個串(其實跟循環差不多)
消除左遞歸的方法:
 eg:P ==> Pα|β
 ---------
 P ==> βP'
 P' ==> αP’|e
 
短語:語法樹中任意子樹節點所組成符號串
直接短語:只有兩代的端末
句柄:由最左推導的出來的直接短語
規范規約:針對α的最左規約,即就是最右推導的逆過程
規范規約,即就是由上一步推導出下一步的過程、式子;而句柄,指的是該式子、公式推導符號的推導結果
“移進-規約”過程由4個列組成
 步驟、符號串、輸入串、動作
 
算符優先文法的判定:
 只要優先關系表中沒有多重入口
 
算符優先的分析過程  等價於  移進-歸約
附注語法樹,帶注釋的語法樹
 


免責聲明!

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



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