編譯原理

出版時間:2005-2  出版社:清華大學  作者:張素琴  頁數(shù):456  
Tag標簽:無  

內容概要

  本書特色:
  這套教材已伴隨著計算機科學與技術的飛速發(fā)展茁壯成長了二十佘年,獲得了國家科學技術進步獎、國家級優(yōu)秀教材特等獎等29項部級以上獎勵,被幾百所高校選作教材,教學效果好?,F(xiàn)經修訂和增加新品種、新內容,基本涵蓋了本科生和碩士研究生的主要課程。這套系列教材體系完整、結構嚴謹、理論結合實際、注重素質培養(yǎng)。
  · 提供一個簡單但不失典型性的編譯程序,有源碼(C和PASCAL兩種語言)和分析工具
便于清晰的展示編譯程序的基本構成和實現(xiàn)技術。借助這個文本,學生可以使用高級語言擴展該編譯程序,也可以利用編譯生成工具重新實現(xiàn)。
  · 重點知識點有了典型例題的解析說明。
  ·
針對面向對象語言的語法結構及其語義的特征,著重從類及類的繼承結構上,討論編譯實現(xiàn)技術及面向對象技術構造編譯程序的思路,便于讀者對一般可復用軟件體系結構的理解。
  
本書介紹編譯系統(tǒng)的一般構造原理、基本實現(xiàn)技術和一些自動構造工具。主要由語言基礎知識、詞法分析、語法分析、中間代碼生成、代碼優(yōu)化、目標代碼生成、符號表的構造和運行時存儲空間的組織等部分組成。
  
書中在介紹編譯程序構造基本原理的同時引入“PL/0語言的編譯程序”結構及文本,還引入了LEX、YACC使用方法與實例。
   本書是高等院校計算機科學與技術專業(yè)的本科生教材,也可作為教師、研究生蔌軟件工程技術人員的參考書。

作者簡介

   呂映芝
清華大學計算機系教授,1961年畢業(yè)于清華大學數(shù)學力學系計算數(shù)學專業(yè)。主要從事程序設計語言編譯原理的教學工作、程序語言結構和自動生成工具的研究工作以及程序設計語言編譯原理計算機輔助教學軟件的研制和開發(fā)工作。

書籍目錄

第1章 引論
 1.1 什么是編譯程序
 1.2 編譯過程和編譯程序的結構
  1.2.1 編譯過程概述
  1.2.2 編譯程序的結構
  1.2.3 編譯階段的組合
 1.3 解釋程序和一些軟件工具
  1.3.1 解釋程序
  1.3.2 處理源程序的軟件工具
 1.4 程序設計語言范型
 練習
第2章 pl/0編程程序的實現(xiàn)
 2.1 pl/0語言描述
  2.1.1 pl/0語言的語漢描述圖
  2.1.2 pl/0語言文法的ebnf表示
 2.2 pl/0編譯程序的結構
 2.3 pl/0編譯程序的詞法分析
 2.4 pl/0編譯程序的語法語義分析
 2.5 pl/0編譯程序的目標代碼結構和代碼生成
 2.6 pl/0編譯程序的語法錯誤處理
 2.7 pl/0編譯程序的目標代碼解釋執(zhí)行時的存儲分配
 練習
第3章 文法和語言
 3.1 文法的直觀概念
 3.2 符號和符號串
 3.3 文法和語言的形式定義
 3.4 文法的類型
 3.5 上下文無關文法及其語法樹
 3.6 句型的分析
  3.6.1 自上而下的分析方法
  3.6.2 自下而上的分析方法
  3.6.3 句型分析的有關問題
 3.7 有關文法實用中的一些說明
  3.7.1 有關文法的實用限制
  3.7.2 上下文無關文法中的規(guī)則
 3.8 典型例題解答
 練習
第4章 詞法分析
 4.1 詞法分析程序的設計
  4.1.1 詞法分析程序與語法分析程序的接口方式
  4.1.2 詞法分析程序的輸出
  4.1.3 將詞法分析工作分離的考慮
 4.2 單詞的描述工具
  4.2.1 正規(guī)文法
  4.2.2 正規(guī)式
  4.2.3 正規(guī)文法和正規(guī)式的等性
 4.3 有窮自動機
  4.3.1 確定的有窮自動機(dfa)
  4.3.2 不確定的有窮自動機(nfa)
  4.3.3 nfa轉換為等價的dfa
  4.3.4 確定有窮自動機的化簡
 4.4 正規(guī)式和有窮自動機的等價性
 4.5 正規(guī)文法和有窮自動機的等價性
 4.6 詞法分析程序的自動構造工具
 4.7 典型例題及解答
 練習
第5章 自頂向下語法分析方法
 5.1 確定的自頂向下分析思想
 5.2 ll(1)文法的判別
 5.3 某些非ll(1)文法到ll(1)文法的等價變換
 5.4 不確定的自頂向下分析思想
 5.5 確定的自頂向下分析方法
  5.5.1 遞歸子程序法
  5.5.2 預測分析方法
 5.6 典型例題及解答
 練習
第6章 自底向上優(yōu)先分析
 6.1 自底向上優(yōu)先分析概述
 6.2 簡單優(yōu)先分析法
  6.2.1 優(yōu)先關系
  6.2.2 簡單優(yōu)先文法的定義
  6.2.3 簡單優(yōu)先分析法的操作步驟
 6.3 算符優(yōu)先分析法
  6.3.1 直觀算符優(yōu)先分析法
  6.3.2 算符優(yōu)先文法的定義
  6.3.3 算符優(yōu)先關系表的構造
  6.3.4 算符優(yōu)先分析算法
  6.3.5 優(yōu)先函數(shù)
  6.3.6 算符優(yōu)先分析法的局限性
 6.4 典型例題及解答
 練習
第7章 lr分析
 7.1 lr分析概述
 7.2 lr(0)分析
  7.2.1 可歸前綴和子前綴
  7.2.2 識別活前綴的有限自動機
  7.2.3 活前綴及其可歸前綴的一般計算方法
  7.2.4 lr(0)項目集規(guī)范族的構造
 7.3 slr(1)分析
 7.4 lr(1)分析
  7.4.1 lr(1)項目集族的構造
  7.4.2 lr(1)分析表的構造
 7.5 lalr(1)分析
 7.6 二義性文法在lr分析中的應用
 7.7 語法分析程序的自動構造工具yacc
 7.8 典型例題及解答
 練習
第8章 語法制導翻譯和中間代碼生成
 8.1 屬性文法
 8.2 語法制導翻譯概論
  8.2.1 計算語義規(guī)則
  8.2.2 s-屬性方法和自下而上翻譯
  8.2.3 l-屬性文法在自上而下分析中的實現(xiàn)
  8.2.4 l-屬性文法在自下而上分析中的實現(xiàn)
 8.3 中間代碼的形式
  8.3.1 逆波壯大記號
  8.3.2 三元式和樹表表示
  8.3.3 四元式
 8.4 簡單賦值語句的翻譯
 8.5 布爾表達式的翻譯
  8.5.1 布爾表達式的翻譯方法
  8.5.2 控制語句中布爾表達式的翻譯
 8.6 控制結構的翻譯
  8.6.1 條件轉移
  8.6.2 開關語句
  8.6.3 for循環(huán)語句
  8.6.4 出口語句
  8.6.5 goto語句
  8.6.6 過程調用的四元式產生
 8.7 說明語句的翻譯
  8.7.1 簡單說明語句的翻譯
  8.7.2 過程中的說明
 8.8 數(shù)組和結構的翻譯
  8.8.1 數(shù)組說明和數(shù)組元素的引用
  8.8.2 結構(記錄)說明和引用的翻譯
 練習
第9章 符號表
 9.1 符號表的作用和地位
 9.2 符號的主要屬性及作用
 9.3 符號表的組織
  9.3.1 符號表的總體組織
  9.3.2 符號表項的排列
  9.3.3 關鍵字域的組織
  9.3.4 其他域的組織
  9.3.5 下堆鏈域的組織
 9.4 符號表的管理
  9.4.1 符號表的初始化
  9.4.2 符號的登錄
  9.4.3 符號的查找
  9.4.4 符號表的分程序結構層次的管理
第10章 目標程序運行時的存儲組織
 10.1 數(shù)據(jù)空間的三種不同使用方法和管理方法
  10.1.1 靜態(tài)存儲分配
  10.1.2 動態(tài)存儲分配
  10.1.3 棧式動態(tài)存儲分配
  10.1.4 堆式動態(tài)存儲分配
 10.2 棧式存儲分配的實現(xiàn)
  10.2.1 簡單的棧式存儲分配的實現(xiàn)
  10.2.2 嵌套過程語言的棧式實現(xiàn)
  10.2.3 分程序結構的存儲管理
 10.3 參數(shù)傳遞
  10.3.1 傳值
  10.3.2 傳地址
  10.3.3 過程參數(shù)
 10.4 過程調用、過程進入和過程返回
  練習
第11章 代碼優(yōu)化
 11.1 優(yōu)化技術簡介
 11.2 局部優(yōu)化
  11.2.1 基本塊的劃分
  11.2.2 基本塊的變換
  11.2.3 基本塊的有向圖dag(directed acyclic graph)表示
  11.2.4 dag的應用
 11.3 控制流分析和循環(huán)優(yōu)化
  11.3.1 程序流圖
  11.3.2 循環(huán)的查找
  11.3.3 循環(huán)優(yōu)化
 11.4 數(shù)據(jù)流的分析與全局優(yōu)化
  11.4.1 一些主要的概念
  11.4.2 數(shù)據(jù)流言程的一般形式
  11.4.3 到達-定值數(shù)據(jù)流方程
  11.4.4 可用表達式及其數(shù)據(jù)流方程
  11.4.5 活躍變量數(shù)據(jù)流方程
  11.4.6 復寫傳播
  練習
第12章 代碼生成
 12.1 代碼生成概述
  12.1.1 代碼生成程序在編譯系統(tǒng)中的位置
  12.1.2 設計代碼生成程序的基本問題
 12.2 一個簡單的代碼生成程序
  12.2.1 計算機模型
  12.2.2 待用信息鏈表法
  12.2.3 代碼生成算法
 12.3 幾種常用的代碼生成程序的開發(fā)方法
  12.3.1 解釋性代碼生成法
  12.3.2 模式匹配代碼生成法
  12.3.3 表驅動代碼生成法
 12.4 全局寄存器分配(圖著色法)
  12.4.1 概述
  12.4.2 圖著色寄存器分配法的相關技術
  12.4.3 示例
 12.5 代碼生成程序的自動化構造
  12.5.1 模式匹配與動態(tài)規(guī)劃
  12.5.2 基于語法制導的代碼生成程序自動構造技術
  12.5.3 基于語義制導的代碼生成程序自動構造技術
  練習
第13章 編譯程序的構造
 13.1 編譯程序的書寫
  13.1.1 編譯程序的書寫語言與t型圖
  13.1.2 編譯程序的自展技術
 13.2 可重定向編譯程序
  13.2.1 概述
  13.2.2 支持可重定向編譯的關鍵技術
  13.2.3 常用的可重定編譯程序
  13.3 gcc的剖析
  13.3.1 gcc的總體結構
  13.3.2 gcc的中間表示
  13.3.3 gcc的機器描述
  13.3.4 gcc的代碼生成與機器描述的接口
 13.4 gcc的定制
  13.4.1 gcc的剪裁
  13.4.2 gcc編譯程序的安裝與配置
 13.5 gcc的優(yōu)化
  13.5.1 概述
  13.5.2 窺孔優(yōu)化
  13.5.3 基于機器描述的窺孔優(yōu)化
  13.5.4 修改gcc源程序的窺孔優(yōu)化
  練習
第14章 面向對象語言的編譯
 14.1 面向對象語言的基本概念
 14.2 面向對象語言語法結構及語義處理的特征
  14.2.1 面向對象語言的類的語法結構及語義
  14.2.2 面向對象語言的有效類、延遲類及延遲成員
  14.2.3 面向對象語言的類屬類
  14.2.4 面向對象語言的繼承類
 14.3 多態(tài)實例變量、多態(tài)引用的類型檢查及綁定
  14.3.1 實例變量和多態(tài)引用
  14.3.2 靜態(tài)類型檢查及動態(tài)類型檢查
  14.3.3 對象的創(chuàng)建
 14.4 面向對象操作的語義
  14.4.1 類名的屬性構造
  14.4.2 類名的屬性及其結構
 14.5 類成員名的屬性及其結構
  14.5.1 類名的屬性及其結構
  14.5.2 類成員名的屬性及其結構
 14.6 對象的存儲管理及廢棄單元回收
  14.6.1 對象的三種存儲區(qū)組織管理方式
  14.6.2 靜態(tài)模型和棧式模型廢棄單元的回收
  14.6.3 堆式模型廢棄單元的回收
  練習
第15章 編譯程序的面向對象構造
 15.1 編譯程序面向對象構造的基本概念
  15.1.1 編譯程序的需求
  15.1.2 編譯程序的分解
  15.1.3 類的構造層次
  15.1.4 類的特性定義
 15.2 構造編譯程序的面向對象類庫
  15.2.1 對傳統(tǒng)編譯程序構造中軟件復用的分析
  15.2.2 面向對象編譯類庫的地位
  15.2.3 語言編譯論的面向對象論域分析
 15.3面向對象編譯程序的符號表構造
 練習
附錄a pl、0編譯程序文本
a.1 pascal版本
a.2 c版本
參考文獻

編輯推薦

《編譯原理》是高等院校計算機科學與技術專業(yè)的本科生教材,也可作為教師、研究生蔌軟件工程技術人員的參考書。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    編譯原理 PDF格式下載


用戶評論 (總計57條)

 
 

  •   講的很清楚,適合軟件工程及計算機相關專業(yè)的同學學習和參考,不過一學期好像講不完那么多,老師說大概只講十章左右,如果有電子版的話可以考慮。
  •   特別適合計算機初學者閱讀,教學必備
  •   已經用了一個學期,是教材。很好
  •   教材指定用書,內容很好,講得很透徹
  •   教材必須有
  •   真心是本經典的書,內容很多很全,建議根據(jù)需要選著看
  •   很新,很好。不錯
  •   不錯 包裝挺好 書沒損壞
  •   書很好,我比較滿意
  •   送貨速度很快,書本質量很好 價格還可以
  •   很好很前面疙瘩
  •   好書,內容貌似挺難的,好好學
  •   這本書很不錯哦,畢竟是清華大學出版社的嘛
  •   書很不錯,很詳細,值得購買
  •   書是挺不錯的,就是郵寄的途中給折了,希望當當以后能改改
  •   很快就收到貨了,沒有損壞非常不錯
  •   還沒看完,質量還可以!
  •   不錯不錯 買來充當課本的
  •   perfect,I wish it help me via test.
  •   很詳細很全面,值得購買!
  •   比學校買的便宜~質量一樣
  •   挺適合當教科書的
  •   就是感覺有點貴
  •   需要很耐心的反復看,希望能真理解
  •   這個商品不錯。很經典的樣子,需要耐下心來讀
  •   最后一門必修!
  •   目前正在看OPG(算符優(yōu)先)文法,花時間學習此書還是能讀懂的。
  •   第二天中午就到了,速度很快
  •   課本,看著還行,應該是真的。
  •   有點薄,其它還可以
  •   正好滿足我的需要,非常實用
  •   編譯原理太難了,所以慢慢學習中。
  •   公司技術人員選的,不知怎樣
  •   不錯的教材,研究生入學考試的參考書目,推薦學習。
  •   估計要把算法類的書真的看懂了才能看這本書吧
  •   書是正版的,包裝業(yè)挺不錯的,就是快遞太慢了太慢了太慢了
  •   書的性價比還行。沒有比較
  •   正在看,覺得還行,不像其他書寫得前后不通,是中國牛人自己寫得書
  •   書不錯。沒老師看起來有點難度。
  •   書總體感覺應該不錯。
  •   紙張的質量偏差
  •   和以前的版本相比就換了個皮,貴
  •   理論講的不清楚,不知道該怎么用。多些實例才好。
  •   這本書講的非常差勁,強烈建議還是使用國外經典教材。
  •   這次買了四百多的書,我徹底失望了,沒有一本完美的,都是褶皺的褶皺,折角的折角,包裝連個硬紙盒都不給你,就是一堆包裝垃-圾紙,我買本書容易嘛?我發(fā)誓,以后再也不來當當買書了。并且我會發(fā)轉發(fā)送獎的微博,當當,你太讓我失望了。這次你給我發(fā)次品,太可恥了,我四百多的書就不能要個好點的保護措施嗎?我買的書你就當垃-圾一樣包裝送過來。服了,去N-MB的。本人微博@揚仔360 不信給發(fā)票給圖。給我本新書能Si嗎?!
  •   我覺很好很適合我
  •   書很好,新印刷的,封皮不同了
  •   非常不好,都經過n手了吧,兩本真的一個天上一個地下啊,還不如兩本都差不多點,各種顏色各種標記,我都沒法做標記了,最后的章節(jié)沒動可是我們也不學啊,學的地方全是別人的各種筆記,一次最不滿意的網(wǎng)購
  •   標準大學教材,內容空洞乏味,時效性差。無特殊需求不建議購買。
  •   沒有缺頁破損~物流很快~支持正版圖書·
  •   一天就送到了,但書有些破損
  •   很好的一本教科書。。不錯?。∮行枰€會在來的。。
  •   alright,don`t buy it except you though you really need it
  •   清華的計算機教材一向不錯,基礎教材,講的還算深入淺出吧,書本身質量不錯,有清華出版社的水印,是正版
  •   書的質量很好!以后還來.....
  •   不錯,不過我主要研究C語言,Pascal的例子看不了,以后還是買本C語言版。
  •   還行吧,就是看不懂啊
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7