編譯程序原理與技術

編譯程序原理與技術 pdf epub mobi txt 電子書 下載2025

出版者:清華大學齣版社
作者:李贛生
出品人:
頁數:341
译者:
出版時間:1997-07
價格:28.00元
裝幀:平裝
isbn號碼:9787302026327
叢書系列:
圖書標籤:
  • 編譯原理
  • 程序猿
  • 日月光華
  • compiler
  • 編譯原理
  • 編譯器構造
  • 程序設計語言
  • 形式語言與自動機
  • 語法分析
  • 語義分析
  • 代碼生成
  • 目標代碼優化
  • 編譯技術
  • 計算機科學
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

內容簡介

本書共分15章。第1、2章介紹瞭編譯程序的基本概念及程序的構造;第3章討論瞭詞法分析;第4

章討論瞭上下文無關文法的基本概念;第5、6章討論語法分析方法;第7章至第14章討論有關語義分

析與處理的有關問題;第15章討論代碼生成技術。書中列齣瞭Lex,Yacc和c的典型編譯源程序,力求

把理論和實現細節相結閤。

本書可作為計算機軟件專業大學生、研究生教材,也可供從事計算機軟件研究、設計和開發的人員

參考。

著者簡介

圖書目錄

目錄
序言
1 引論
1.1 什麼是編譯程序
1.2 解釋性程序
1.3 編譯程序的基本結構
1.4 程序語言的語法與語義
1.5 程序設計語言設計、編譯程序設計及計算機設計之間的關係
練習1
2 一個簡單的編譯程序
2.1 語言(XL)概述
2.2 XL的詞法分析程序
2.3 XL遞歸下降分析
2.4 生成中間代碼
2.4.1 中間語言
2.4.2 臨時變量
2.4.3 動作符號
2.4.4 語義信息
練習2
3 詞法分析
3.1 輸入子係統
3.2 詞法分析的兩個途徑
3.3 正規錶達式
3.3.1 基本定義
3.3.2 正規錶達式
3.4 有限自動機
3.5 從正規錶達式到詞法分析程序
3.6 LEX――一個建立詞法分析器的自動工具
3.7 實踐中的幾個問題
3.7.1 保留字
3.7.2 嚮前看多字符問題
3.7.3 詞法錯誤的矯正
3.8 正規錶達式到有限自動機的轉換
3.8.1 把正規錶達式轉換為NFA
3.8.2 從NFA到DFA的轉換――子集構造法
3.8.3 DFA的優化――極小化
練習3
4 上下文無關文法與分析
4.1 基本概念與定義
4.2 推導與分析樹
4.3 文法的設計
4.3.1 右綫性文法
4.3.2 驗證由文法生成的語言
4.3.3 消除歧義
4.3.4 遞歸文法
4.3.5 提左公因子
4.4 文法分析算法
4.4.1 空串非終結符
4.4.2 FIRST集閤及其計算
4.4.3 FOLLOW集閤及其計算
4.5 上下文無關文法的限度
練習4
5 LL(1)文法與分析器
5.1 自上而下分析與下推自動機
5.1.1 作為下推自動機的遞歸下降分析器
5.1.2 利用下推自動機進行自上而下的分析算法
5.2 LL(1)預測函數
5.3 LL(1)分析錶
5.4 一個LL(1)分析錶及驅動程序實例
5.5 LL的自動生成工具
5.5.1 LLama
5.5.2 LLGen
5.6 LL(1)文法的構造
5.7 自上而下分析中的查錯恢復問題
練習5
6 LR分析
6.1 自下而上的分析過程――移入歸約分析
6.2 利用狀態機實現對LR分析器的控製
6.3 建立LR分析錶的基本理論
6.3.1 LR(0)文法
6.3.2 SLR(1)文法
6.3.3 LR(1)文法
6.3.4 LALR(1)文法
6.4 LR分析錶的壓縮錶示
6.5 歧義文法的利用
6.6 LR分析中的查錯恢復問題
6.7 LALR(1)分析器的自動生成工具――YACC與OCCS
6.7.1 YACC程序
6.7.2 YACC中如何利用歧義文法
6.7.3 利用Lex建立YACC的詞法分析程序
6.7.4YACC中的查錯恢復方法
練習6
7 語法製導的翻譯
7.1 增廣文法
7.2 屬性文法
7.3 LL分析中的語義處理技術
7.3.1 錶驅動的LL分析中使用的增廣文法
7.3.2 下推自動機中屬性文法的實施
7.3.3 LL中屬性的$錶示法
7.4 LR分析中的語義處理技術
7.4.1 LR分析中屬性處理的特點
7.4.2 一個LR語義處理流程的例子
7.4.3 建立LR分析用的屬性文法及LR分析中屬性的$錶示法
7.4.4 嵌入動作與語法變換
7.5 語義棧的類型描述
7.6 中間語言錶示――IR
7.6.1 IR的一般形式
7.6.2 C代碼:一種簡單的中間語言與虛擬機
7.6.2.1 C虛擬機
7.6.2.2 C虛擬機的存儲管理
7.6.2.3 C代碼描述
練習7
8 符號錶
8.1 符號錶模塊的基本結構
8.2 符號錶數據庫的數據結構
8.3 一個分程序結構的哈希符號錶
8.3.1 基本數據結構
8.3.2 分程序結構
8.3.3 一種簡單的分程序結構符號錶的實現方法
8.3.4 符號錶的高級維護層
練習8
9 運行時存儲器的組織
9.1 靜態分配
9.2 棧式分配
9.3 堆式分配
9.4 靜態鍵與動態鍵
練習9
10 聲明的語義處理技術
10.1 簡單變量聲明的處理
10.2 結構與聯閤聲明的處理
10.3 枚舉類型聲明的處理
10.4 函數聲明與定義的處理
10.5 分程序的處理
練習10
11 C代碼生成器的接口gen()子程序
練習11
12 錶達式的語義處理
12.1 臨時變量的分配
12.2 左值與右值
12.3 臨時變量的錶示――一種支持左右值實現的數據結構
12.4 單目運算符的語義處理
12.5 雙目運算符的處理
練習12
13 控製語句的語義處理
13.1 簡單控製語句的語義處理
13.2 條件語句的語義處理
13.3 循環語句break與c0ntinue語句的語義處理
13.4switch語句的語義處理
練習13
14 代碼優化
14.1 分析器的優化
14.2 綫性(窺孔)優化
14.2.1 強度削減
14.2.2 常數摺閤與常數傳播
14.2.3 死變量與死代碼
14.2.4 窺孔優化之例
14.3 語法樹上的優化
14.3.1 從逆波蘭至語法樹
14.3.2 公共子錶達式節省
14.3.3 寄存器分配
14.3.4 局部循環優化
練習14
15 代碼的生成
15.1 寄存器與臨時單元的管理
15.2 一個簡單的代碼生成器
15.3 一個簡單的寄存器分配方案
15.4 從樹生成代碼
15.5 代碼生成器的自動化技術
15.5.1 基於文法的代碼生成器
15.5.2 基於樹重寫的代碼生成器的生成器
練習15
參考文獻
· · · · · · (收起)

讀後感

評分

評分

評分

評分

評分

用戶評價

评分

平生買的第一本編譯書,平生遇到的第一本爛書。

评分

平生買的第一本編譯書,平生遇到的第一本爛書。

评分

平生買的第一本編譯書,平生遇到的第一本爛書。

评分

平生買的第一本編譯書,平生遇到的第一本爛書。

评分

平生買的第一本編譯書,平生遇到的第一本爛書。

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有