編輯推薦
《編譯原理(第3版)/“十二五”普通高等教育本科國傢規劃教材》特色:
內容全麵、強調主綫。包括詞法分析、語法分析、語法製導的翻譯、靜態語義分析、運行時存儲空間的組織和管理、中間代碼生成、目標代碼生成、代碼優化、編譯係統與運行係統、麵嚮對象語言編譯技術和函數式語言編譯技術等,並以編譯的各個邏輯階段為主綫?重視理論和形式方法。在圍繞主綫的同時,將相關理論和形式化技術的介紹穿插其中,有助於學生較快地領會和掌握;內容難易有彆,難度較大的內容作為可選部分放在每章的最後,以拓寬教材的適用麵。習題聯係實際。本教材的很多例題和習題是從實際碰到的問題中抽象或抽取齣來的:它們聯係編程、編譯、運行的實際,能激發學生學習本課程的興趣。
內容簡介
《編譯原理(第3版)/“十二五”普通高等教育本科國傢級規劃教材》介紹編譯器構造的一般原理和基本實現方法,內容包括詞法分析、語法分析、語義分析、中間代碼生成、目標代碼生成、獨立於機器的優化和依賴於機器的優化等。除瞭介紹命令式編程語言的編譯技術外,《編譯原理(第3版)/“十二五”普通高等教育本科國傢級規劃教材》還介紹麵嚮對象編程語言和函數式編程語言的實現技術。另外,《編譯原理(第3版)/“十二五”普通高等教育本科國傢級規劃教材》還強調一些相關的理論知識,如形式語言和自動機理論、語法製導的定義和屬性文法、類型論和類型係統等。
《編譯原理(第3版)/“十二五”普通高等教育本科國傢級規劃教材》內容豐富、講解深入,注意理論聯係實際,可作為高等學校計算機科學及相關專業的教材,也可供計算機軟件工程技術人員參考。
作者簡介
陳意雲,1946年生,教授,博士生導師。1980年畢業於中國科學技術大學,1982年12月在上海華東計算技術研究所獲碩士學位。1983年到中國科學技術大學計算機係工作,1989年到美國芝加哥大學訪問兩年。長期從事程序設計語言理論和實現技術、程序驗證、軟件安全等方麵的研究工作,主持瞭7項與這些方嚮有關的國傢自然科學基金項目。長期從事“編譯原理”和“程序設計語言理論”等課程的教學工作,2007年獲安徽省教學名師奬。本書兩位作者在編譯原理課程係列教材建設方麵的工作獲2005年安徽省高等教育省級教學成果三等奬。
張昱,1972年生,副教授。1996年畢業於閤肥工業大學,獲碩士學位;2004年12月畢業於中國科學技術大學,獲博士學位。主要從事“數據結構”、“縭譯原理”、“程序設計語言理論”等課程的教學工作。主要研究方嚮是:程序設計語言理論和實現技術,特彆是麵嚮新型係統結構的並行語言設計和編譯、並行程序分析和驗證,即時編譯器輔助的垃圾收集技術。
內頁插圖
目錄
第1章 引論
1.1 編譯器概述
1.1.1 詞法分析
1.1.2 語法分析
1.1.3 語義分析
1.1.4 中間代碼生成
1.1.5 代碼優化
1.1.6 代碼生成
1.1.7 符號錶管理
1.1.8 階段的分組
1.1.9 解釋器
1.2 編譯器技術的應用
1.2.1 高級語言的實現
1.2.2 針對計算機體係結構的優化
1.2.3 新計算機體係結構的設計
1.2.4 程序翻譯
1.2.5 提高軟件開發效率的工具
習題1
第2章 詞法分析
2.1 詞法記號及屬性
2.1.1 詞法記號、模式、詞法單元
2.1.2 詞法記號的屬性
2.1.3 詞法錯誤
2.2 詞法記號的描述與識彆
2.2.1 串和語言
2.2.2 正規式
2.2.3 正規定義
2.2.4 狀態轉換圖
2.3 有限自動機
2.3.1 不確定的有限自動機
2.3.2 確定的有限自動機
2.3.3 NFA到DFA的變換
2.3.4 DFA的化簡
2.4 從正規式到有限自動機
2.5 詞法分析器的生成器
習題2
第3章 語法分析
3.1 上下文無關文法
3.1.1 上下文無關文法的定義
3.1.2 推導
3.1.3 分析樹
3.1.4 二義性
3.2 語言和文法
3.2.1 正規式和上下文無關文法的比較
3.2.2 分離詞法分析器的理由
3.2.3 驗證文法産生的語言
3.2.4 適當的錶達式文法
3.2.5 消除二義性
3.2.6 消除左遞歸
3.2.7 提左因子
3.2.8 非上下文無關的語言構造
3.2.9 形式語言鳥瞰
3.3 自上而下分析
3.3.1 自上而下分析的一般方法
3.3.2 LL(1)文法
3.3.3 遞歸下降的預測分析
3.3.4 非遞歸的預測分析
3.3.5 構造預測分析錶
3.3.6 預測分析的錯誤恢復
3.4 自下而上分析
3.4.1 歸約
3.4.2 句柄
3.4.3 用棧實現移進一歸約分析
3.4.4 移進一歸約分析的衝突
3.5 LR分析器
3.5.1 LR分析算法
3.5.2 LR文法和LR分析方法的特點
3.5.3 構造SLR分析錶
3.5.4 構造規範的LR分析錶
3.5.5 構造LALR分析錶
3.5.6 非二義且非LR的上下文無關文法
3.6 二義文法的應用
3.6.1 使用算符的優先級和結閤性來解決衝突
3.6.2 使用其他約定來解決衝突
3.6.3 LR分析的錯誤恢復
3.7 語法分析器的生成器
3.7.1 分析器的生成器Yacc
3.7.2 用Yacc處理二義文法
3.7.3 Yace的錯誤恢復
習題3
第4章 語法製導的翻譯
4.1 語法製導的定義
4.1.1 語法製導定義的形式
4.1.2 綜閤屬性
4.1.3 繼承屬性
4.1.4 屬性依賴圖
4.1.5 屬性計算次序
4.2 S屬性定義的自下而上計算
4.2.1 語法樹
4.2.2 構造語法樹的語法製導定義
4.2.3 S屬性的自下而上計算
4.3 L屬性定義的自上而下計算
4.3.1 L屬性定義
4.3.2 翻譯方案
4.3.3 預測翻譯器的設計
4.3.4 用綜閤屬性代替繼承屬性
4.4 L屬性的自下而上計算
4.4.1 刪除翻譯方案中嵌入的動作
4.4.2 分析棧上的繼承屬性
4.4.3 模擬繼承屬性的計算
習題4
第5章 類型檢查
5.1 類型在編程語言中的作用
5.1.1 執行錯誤和安全語言
5.1.2 類型化語言和類型係統
5.1.3 類型化語言的優點
5.2 類型係統的描述語言
5.2.1 定型斷言
5.2.2 定型規則
5.2.3 類型檢查和類型推斷
5.3 一個簡單類型檢查器的規範
5.3.1 一個簡單的語言
5.3.2 類型係統
5.3.3 類型檢查
5.3.4 類型轉換
5.4 多態函數
5.4.1 為什麼要使用多態函數
5.4.2 類型變量
5.4.3 一個含多態函數的語言
5.4.4 代換、實例與閤
5.4.5 多態函數的類型檢查
5.5 類型錶達式的等價
5.5.1 類型錶達式的結構等價
5.5.2 類型錶達式的名字等價
……
第6章 運行時存儲空間的組織和管理
第7章 中間代碼生成
第8章 代碼生成
第9章 獨立於機器的優化
第10章 依賴於機器的優化
第11章 編譯係統和運行時係統
第12章 麵嚮對象語言的編譯
第13章 函數式語言的編譯
編譯原理(第3版)/“十二五”普通高等教育本科國傢級規劃教材 下載 mobi epub pdf txt 電子書 格式