編譯原理

出版時間:2009-5  出版社:機械工業(yè)  作者:Alfred V. Aho,Monica S. Lam,Ravi Sethi,Jeffrey D. Ullman  頁數(shù):412  譯者:趙建華,鄭濤,戴新宇  
Tag標簽:無  

前言

構造編譯器的原理和技術是計算機科學技術領域中一個非常重要的組成部分,指導人們構造能夠生成正確。高效的代碼的編譯器。現(xiàn)在的絕大部分軟件都是使用高級程序設計語言編寫的,需要使用編譯器來得到可運行代碼,因此編譯原理和技術對于構造正確??煽俊8咝У能浖欠浅V匾?。經過了50年的研究發(fā)展,編譯技術已經使得人們可以為各種高級編程機制生成高效的代碼,使得人們可以使用更加抽象的語言來編寫高效的軟件。但硬件技術的進步仍然對編譯技術提出了新的挑戰(zhàn)。比如多核PU的廣泛應用要求更優(yōu)秀的程序分析技術和并行編譯器。因此,編譯原理和技術在將來仍然是一個重要的研究課題。Aho等人編寫的《編譯原理》是一本經典的教材。這本書不僅包含了編譯器構造的基本原理和技術,還包含了很多和編譯相關的高級技術。對于專業(yè)技術人員來說,這是一本很全面的參考書目。但是書中的很多內容超出了本科教學的要求,不符合中國的本科教材的習慣。因此,出版社委托我們對這本書進行改編,主要的工作是刪減一些不需要在本科教學過程中講授的內容。保留下的內容包括詞法分析。語法分析。語義分析。中間代碼生成,以及運行時刻環(huán)境。優(yōu)化和代碼生成方法的基本技術。我們刪去了原書的第十章。第十一章和第十二章。這三章的內容是關于并行性和程序分析的高級議題,一般不對本科生講授。此外,我們對原書第九章機器無關優(yōu)化的內容進行了刪減,保留了一些基本的數(shù)據(jù)流優(yōu)化算法。我們還刪減了一些高級的算法和技術,包括運行時刻環(huán)境中的短停頓垃圾收集算法。類型檢查中的類型推導和合一算法,高效構造DF算法等。另外,我們還刪去了一些與實現(xiàn)細節(jié)有關的技術,比如詞法分析中緩沖區(qū)的管理。語法分析中LR分析表的壓縮技術等。刪去了這些高級內容之后,保留部分已經可以在一個學期的本科生課程中講完。當然,考慮到不同學校有不同的專業(yè)要求,任課教師仍然可以考慮舍棄一些內容,比如第八章中關于代碼生成的高級議題編譯原理是一門比較難學的課程。主要原因在于它包含了很多理論性的東西,抽象程度比較高,而且還包含了很多復雜的算法和用于編譯器構造的抽象數(shù)學概念。我建議學生學習的時候可以先閱讀本書的第二章。第二章的內容可以幫助大家了解編譯器的基本構造和功能,然后在學習后續(xù)各章節(jié)的時候加深理解。自己動手編寫一個小型語言的編譯器也是一個很好的學習方法。使用Y和Lex等工具之后,編寫一個這樣的編譯器并不需要很大的工作量,卻可以有效幫助大家深入理解各種編譯技術。

內容概要

  《編譯原理》是編譯原理課程方面的經典教材,全面、深入地探討了編譯器設計方面的重要主題,包括詞法分析、語法分析、語法制導定義和語法制導翻譯、運行時刻環(huán)境、目標代碼生成、代碼優(yōu)化技術、并行性檢測以及過程間分析技術,并在相關章節(jié)中給出大量的實例。與上一版相比,本書進行了全面修訂,涵蓋了編譯器開發(fā)方面最新進展。每章中都提供了大量的實例及參考文獻?! ”緯谠摃?版進行改編,內容更加精練和實用,體系更加符合國內教學情況,適合作為高等院校計算機及相關專業(yè)本科生的編譯原理課程的教材,也是廣大研究人員和技術人員的極佳參考讀物?! ”緯蔷幾g領域無可替代的經典著作,被廣大計算機專業(yè)人士譽為“龍書”。本書上一版自1986年出版以來,被世界各地的著名高等院校和研究機構(包括美國哥倫比亞大學。斯坦福大學、哈佛大學、普林斯頓大學。貝爾實驗室)作為本科生和研究生的編譯原理課程的教材。該書對我國高等計算機教育領域也產生了重大影響?! 〉?版對每一章都進行了全面的修訂,以反映自上一版出版20多年來軟件工程、程序設計語言和計算機體系結構方面的發(fā)展對編譯技術的影響。第2版全面介紹了編譯器的設計,并強調編譯技術在軟件設計和開發(fā)中的廣泛應用。每章中都包含大量的習題和豐富的參考文獻?! ”緯谠摃?版進行改編,保留其中的基本內容,壓縮或刪除了一些高級內容,更適合作為國內高校計算機及相關專業(yè)本科生編譯原理課程教材。

作者簡介

Alfred V.Aho,美國哥倫比亞大學教授,美國國家工程院院士,ACM和IEE會士,曾獲得IEEE的馮•諾伊曼獎。著有多部算法、數(shù)據(jù)結構、編譯器、數(shù)據(jù)庫系統(tǒng)及計算機科學基礎方面的著作。

書籍目錄

出版者的話改編者序前言第1章 引論 1.1 語言處理器 1.2 一個編譯器的結構  1.2.1 詞法分析  1.2.2 語法分析  1.2.3 語義分析  1.2.4 中間代碼生成  1.2.5 代碼優(yōu)化  1.2.6 代碼生成  1.2.7 符號表管理  1.2.8 將多個步驟組合成趟  1.2.9 編譯器構造工具 1.3 程序設計語言的發(fā)展歷程  1.3.1 走向高級程序設計語言  1.3.2 對編譯器的影響  1.3.3 1.3節(jié)的練習 1.4 構建一個編譯器的相關科學  1.4.1 編譯器設計和實現(xiàn)中的建模  1.4.2 代碼優(yōu)化的科學 1.5 編譯技術的應用  1.5.1 高級程序設計語言的實現(xiàn)  1.5.2 針對計算機體系結構的優(yōu)化  1.5.3 新計算機體系結構的設計  1.5.4 程序翻譯  1.5.5 軟件生產率工具 1.6 程序設計語言基礎  1.6.1 靜態(tài)和動態(tài)的區(qū)別  1.6.2 環(huán)境與狀態(tài)  1.6.3 靜態(tài)作用域和塊結構  1.6.4 顯式訪問控制  1.6.5 動態(tài)作用域  1.6.6 參數(shù)傳遞機制  1.6.7 別名  1.6.8 1.6節(jié)的練習 1.7 第1章總結 1.8 第1章參考文獻第2章 一個簡單的語法制導翻譯器 2.1 引言 2.2 語法定義  2.2.1 文法定義  2.2.2 推導  2.2.3 語法分析樹  2.2.4 二義性  2.2.5 運算符的結合性  2.2.6 運算符的優(yōu)先級  2.2.7 2.2節(jié)的練習 2.3 語法制導翻譯  2.3.1 后綴表示  2.3.2 綜合屬性  2.3.3 簡單語法制導定義  2.3.4 樹的遍歷  2.3.5 翻譯方案  2.3.6 2.3節(jié)的練習 2.4 語法分析  2.4.1 自頂向下分析方法  2.4.2 預測分析法  2.4.3 何時使用產生式  2.4.4 設計一個預測分析器  2.4.5 左遞歸  2.4.6 2.4節(jié)的練習 2.5 簡單表達式的翻譯器  2.5.1 抽象語法和具體語法  2.5.2 調整翻譯方案  2.5.3 非終結符號的過程  2.5.4 翻譯器的簡化  2.5.5 完整的程序 2.6 詞法分析  2.6.1 剔除空白和注釋  2.6.2 預讀  2.6.3 常量  2.6.4 識別關鍵字和標識符  2.6.5 詞法分析器  2.6.6 2.6節(jié)的練習 2.7 符號表  2.7.1 為每個作用域設置一個符號表  2.7.2 符號表的使用 2.8 生成中間代碼  2.8.1 兩種中間表示形式  2.8.2 語法樹的構造 2.8.3 靜態(tài)檢查  2.8.4 三地址碼  2.8.5 2.8節(jié)的練習 2.9 第2章總結第3章第4章 語法分析第5章 語法制導的翻譯第6章 中間代碼生成第7章 運行時刻環(huán)境第8章 代碼生成第9章 機器無關優(yōu)化附錄 一個完整的編譯器前端

章節(jié)摘錄

插圖:第1章 引論程序設計語言是向人以及計算機描述計算過程的記號。如我們所知,這個世界依賴于程序設計語言,因為在所有計算機上運行的所有軟件都是用某種程序設計語言編寫的。但是,在一個程序可以運行之前,它首先需要被翻譯成一種能夠被計算機執(zhí)行的形式。完成這項翻譯工作的軟件系統(tǒng)稱為編譯器(compiler)。本書介紹的是設計和實現(xiàn)編譯器的方法。我們將介紹用于構建面向多種語言和機器的翻譯器的一些基本思想。編譯器設計的原理和技術還可以用于編譯器設計之外的眾多領域。因此,這些原理和技術通常會在一個計算機科學家的職業(yè)生涯中多次被用到。研究編譯器的編寫將涉及程序設計語言、計算機體系結構、形式語言理論、算法和軟件工程。在本章中,我們將介紹語言翻譯器的不同形式,在高層次上概述一個典型編譯器的結構,并討論了程序設計語言和硬件體系結構的發(fā)展趨勢。這些趨勢將影響編譯器的形式。我們還將介紹關于編譯器設計和計算機科學理論的關系的一些事實,并給出編譯技術在編譯領域之外的一些應用。最后,我們將簡單論述在我們研究編譯器時需要用到的重要的程序設計語言概念。

編輯推薦

《編譯原理(本科教學版第2版)》是編譯領域無可替代的經典著作,被廣大計算機專業(yè)人士譽為“龍書”?!毒幾g原理(本科教學版第2版)》上一版自1986年出版以來,被世界各地的著名高等院校和研究機構(包括美國哥倫比亞大學、斯坦福大學、哈佛大學、普林斯頓大學、貝爾實驗室)作為本科生和研究生的編譯原理課程的教材。該書對我國高等計算機教育領域也產生了重大影響。編譯領域里程碑式的經典著作——龍書,20年后終于出版新版!這是一個延綿30年的故事,這是一部關于龍書的傳奇!最新版本,增添兩章節(jié)內容,使龍書地位更權威!第2版對每一章都進行了全面的修訂,以反映自上一版出版20多年來軟件工程。程序設計語言和計算機體系結構方面的發(fā)展對編譯技術的影響?!毒幾g原理(本科教學版第2版)》全面介紹了編譯器的設計,并強調編譯技術在軟件設計和開發(fā)中的廣泛應用。每章中都包含大量的習題和豐富的參考文獻?!毒幾g原理(本科教學版第2版)》適合作為高等院校計算機專業(yè)本科生和研究生的編譯原理與技術課程的教材,也可供廣大計算機技術人員參考。1977年,Alfred V.Aho和Jeffrey D.Ullman合作出版了《Principies of Compilet Design》,封面是一位騎士和一只恐龍,那恐龍是綠色的,因此被稱為龍書或綠龍書。1986年,原來的兩位作者加上Ravi Sethi,升級了前一《編譯原理(本科教學版第2版)》,書名改為《compiIers:Principles,Techniques and Tools》,封面依然沿用騎士和恐龍,那恐龍是紅色的,因此被稱為龍書二或者紅龍書。又過了一個9年又一個9年,編譯領域的巨無霸——龍書始終都沒有升級。終于在2006年底,龍書升級了。作者又增加了Monica S.Lam,名字與龍書二相同,封面依然沿用恐龍和武士的設計,這次的龍是紫色的,因此被稱為龍書三或者紫龍書。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    編譯原理 PDF格式下載


用戶評論 (總計57條)

 
 

  •   編譯原理(本科教學版)內容不錯,值得購買。
  •   編譯原理是比較難的計算機理論,但這本書講解得很詳細,基本上能看懂了~
  •   老師推薦的很經典的編譯原理方面的書,值得一看
  •   書的包裝很好,很精美,一看就是正版的圖書,所以用起來也很放心,不用擔心出錯。這本書是老師推薦買的,說是編譯原理中的經典之作,非常值得一看!
  •   龍書,沒的說,編譯教材的經典
  •   編譯領域最經典著作?。?/li>
  •   本科版的書很適合,送到的時候包著膜全新的
  •   適合本科生用,學校發(fā)的教材……一言難盡啊
  •   這本書講得很詳盡,有很多實例,適合自學者
  •   很簡潔的一本書,把原書讓人看上去就頭大的冗雜部分刪掉了,適合上課和考試復習用。
  •   買了讀了一下子我就表示要放棄了,后來也沒有去計科這個專業(yè),所以這本書大概是浪費了。
  •   經典系列書籍 學習中
  •   很有用的,起碼對軟件學院的學生而言
  •   龍書的確是名不虛傳,但是如果對Java不熟悉的人或許看得會比較吃力,全書主要是圍繞Java的面向對象來講述的,環(huán)環(huán)相扣,難度比較大,是一本不可多得的好書
  •   學校訂的教材,雖然很難懂
  •   包裝很好啊,一看就是正版的圖書,可惜買來老師說不用這本教材了! T_T
  •   我拿到的包裹中有5本書,只有這一本有透明塑料薄膜包裝,心里感覺干凈些。
  •   書的內容不錯,不過有點不夠細致
  •   書得內容很不錯哦
  •   書很好,里面例子也很多,很值得看的一本書。
  •   不適合剛入門的看
  •   內容不錯!質量挺好的。
  •   一切都很好,計科學生一定要看!
  •   老師推薦的書,說看完一定會受益匪淺的.還沒看呢,希望能好好看看.
  •   要是我選員工,首先問他們基礎怎么樣?這科沒上九十分,不要來找工作啊。
  •   挺好,挺霸氣
  •   看起來還不錯,值得一看
  •   沒看不做過多評價。應該是正版
  •   內存很棒
  •   正在讀,不知道
  •   值得購買閱讀與收藏
  •   早就想買了,終于有貨了
  •   東西很好哦!
  •   還沒看,瀏覽一下,還不錯。
  •   我的編譯原理課程的指定教材。書本質量紙質都不錯。只是編寫內容有點混亂,也可能是老師教的順序打亂了吧,才給我這種感覺。
  •   龍書的教材版,很不錯
  •   正在閱讀,相比于國內某些教材,講的還算比較不錯。
  •   看了感覺有點難,慢慢研究,聽說書中的思想和方法能用得上。
  •   龍書
  •   印刷得很好,書的內容不錯
  •   不錯 內容沒的說
  •   這本書我非常喜歡,
  •   上課要用的書,外國人寫的比較不好懂,很少用
  •   自己考研要用到的專業(yè)課資料,應該還不錯,好好加油吧。
  •   東西不錯哦,就是快遞有點慢。。
  •   讀了第三章,發(fā)現(xiàn)有幾處錯誤,這本書的校對沒有做好啊
  •   書還不錯,可惜找不到舊書買
  •   不錯,考研復試用的....^_^...
  •   我去年買了個表 十天才到
  •   這本書是教材書的質量很好沒得說
  •   非常專業(yè)的書.學習用
  •   這本書對我?guī)椭艽筻?/li>
  •   是龍書的本科教學版。
  •   不錯,質量不錯,運的過程中沒有損壞
  •   昨天上午定的,今天中午就到了,卓越發(fā)貨很快,書的內容不用多說了,感覺印刷還行。
  •   不知道是我的漢語水平有問題還是翻譯不給力,反正看起來就覺著云里霧里的,到網上找了本原版英文版的相互對照著看感覺還不錯 呵呵
  •   翻譯有些地方不夠流暢
 

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

京ICP備13047387號-7