編譯器構(gòu)造

出版時(shí)間:2012-5  出版社:清華大學(xué)出版社  作者:Charles N. Fischer,Ron K. Cytron,Richard J. LeBlanc Jr.  頁(yè)數(shù):444  譯者:郭耀  
Tag標(biāo)簽:無(wú)  

內(nèi)容概要

  《世界著名計(jì)算機(jī)教材精選:編譯器構(gòu)造》是一本面向計(jì)算機(jī)系本科生的編譯器教材。作者在三所美國(guó)大學(xué)擁有長(zhǎng)達(dá)25年的編譯器教學(xué)經(jīng)驗(yàn),在本書(shū)中對(duì)編譯器構(gòu)造的基本知識(shí)與關(guān)鍵技術(shù)進(jìn)行了全新的講解。本書(shū)的主要內(nèi)容包括:編譯器歷史和概述、詞法分析(掃描)、語(yǔ)法分析(包括自頂向下和自底向上的分析)、語(yǔ)法制導(dǎo)翻譯、符號(hào)表和聲明處理、語(yǔ)義分析、中間表示形式、虛擬機(jī)上的代碼生成、運(yùn)行時(shí)支持、目標(biāo)代碼生成和程序優(yōu)化等?! ”緯?shū)提供了詳盡清晰的算法,主推在實(shí)踐中學(xué)習(xí)編譯器構(gòu)造的相關(guān)技術(shù),同時(shí)提供了配合教材使用的教學(xué)網(wǎng)站、參考資料以及源碼下載。本書(shū)不僅可以作為計(jì)算機(jī)專業(yè)本科生或研究生的參考教材,同時(shí)也適合相關(guān)領(lǐng)域的軟件工程師、系統(tǒng)分析師等作為參考資料。

作者簡(jiǎn)介

作者:(美國(guó))費(fèi)希爾(Charles N. Fischer) (美國(guó))賽特朗(Ronald K. Cytron) (美國(guó))萊比蘭克(Richard J. LeBlanc Jr.) 譯者:郭耀 等

書(shū)籍目錄

第1章  概述1.1  編譯的歷史1.2  編譯器可以做什么1.2.1  編譯器生成的機(jī)器代碼1.2.2  目標(biāo)代碼格式1.3  解釋器1.4  語(yǔ)法和語(yǔ)義1.4.1  靜態(tài)語(yǔ)義1.4.2  運(yùn)行時(shí)語(yǔ)義1.5  編譯器的組織結(jié)構(gòu)1.5.1  掃描器1.5.2  分析器1.5.3  類型檢查器(語(yǔ)義分析)1.5.4  翻譯器(程序綜合)1.5.5  符號(hào)表1.5.6  優(yōu)化器1.5.7  代碼生成器1.5.8  編譯器開(kāi)發(fā)工具1.6  程序設(shè)計(jì)語(yǔ)言和編譯器設(shè)計(jì)1.7  計(jì)算機(jī)體系結(jié)構(gòu)和編譯器設(shè)計(jì)1.8  編譯器設(shè)計(jì)的考慮事項(xiàng)1.8.1  調(diào)試(開(kāi)發(fā))編譯器1.8.2  優(yōu)化編譯器1.8.3  可重定向編譯器1.9  集成開(kāi)發(fā)環(huán)境練習(xí)第2章  一個(gè)簡(jiǎn)單的編譯器第3章  掃描--理論和實(shí)踐第4章  文法和分析第5章  自頂向下分析第6章  自底向上分析第7章  語(yǔ)法制導(dǎo)翻譯第8章  符號(hào)表和聲明處理第9章  語(yǔ)義分析第10章  中間表示形式第11章  面向虛擬機(jī)的代碼生成第12章  運(yùn)行時(shí)支持第13章  目標(biāo)代碼生成第14章  程序優(yōu)化參考文獻(xiàn)縮略語(yǔ)

章節(jié)摘錄

版權(quán)頁(yè):   插圖:   1.5.2 分析器 分析器(parser)的基礎(chǔ)是像上下文無(wú)關(guān)文法這樣的形式化語(yǔ)法規(guī)范。它讀入詞法單元,并把它們按照語(yǔ)法規(guī)范組織成短語(yǔ)(phrase)。第2章和第4章講解文法(grammar),第5章和第6章會(huì)講解語(yǔ)法分析。分析器通常是由用分析器生成工具(parser generator)從上下文無(wú)關(guān)文法所創(chuàng)建的分析表來(lái)驅(qū)動(dòng)的。 分析器檢查語(yǔ)法的正確性。如果找到語(yǔ)法錯(cuò)誤的話,那么它會(huì)提交合適的錯(cuò)誤消息。同樣,它也可以修正錯(cuò)誤(從而得到語(yǔ)法上合法的程序),或者從錯(cuò)誤中恢復(fù)(允許分析繼續(xù)執(zhí)行下去)。在許多情況下,語(yǔ)法錯(cuò)誤恢復(fù)或修正可以通過(guò)對(duì)分析器生成工具所創(chuàng)建的結(jié)構(gòu)中的信息的檢查來(lái)自動(dòng)完成。 在識(shí)別了語(yǔ)法結(jié)構(gòu)之后,分析器通常會(huì)構(gòu)建一個(gè)抽象語(yǔ)法樹(shù),作為程序結(jié)構(gòu)的一種簡(jiǎn)潔表示。隨后抽象語(yǔ)法樹(shù)會(huì)作為語(yǔ)義處理的基礎(chǔ)。抽象語(yǔ)法樹(shù)會(huì)在第2章和第7章中進(jìn)行講解。 1.5.3類型檢查器(語(yǔ)義分析) 類型檢查器檢查每個(gè)抽象語(yǔ)法樹(shù)結(jié)點(diǎn)的靜態(tài)語(yǔ)義(static semantics),也就是說(shuō),它會(huì)驗(yàn)證該結(jié)點(diǎn)所代表的結(jié)構(gòu)是合法和有意義的(例如,所有用到的標(biāo)識(shí)符都有聲明,類型都是正確的,以此類推)。如果一個(gè)結(jié)構(gòu)在語(yǔ)義上是正確的,那么類型檢查器會(huì)在該抽象語(yǔ)法樹(shù)結(jié)點(diǎn)上添加附加的類型信息。如果發(fā)現(xiàn)了語(yǔ)義錯(cuò)誤,那么就會(huì)觸發(fā)一個(gè)相應(yīng)的錯(cuò)誤消息。 類型檢查完全依賴于源語(yǔ)言的語(yǔ)義規(guī)則,它和編譯器的目標(biāo)機(jī)器是無(wú)關(guān)的。 1.5.4翻譯器(程序綜合) 如果一個(gè)抽象語(yǔ)法樹(shù)結(jié)點(diǎn)在語(yǔ)義上是正確的,那么它就可以被翻譯成正確實(shí)現(xiàn)該語(yǔ)法樹(shù)結(jié)點(diǎn)含義的中間表示代碼。例如,while循環(huán)的抽象語(yǔ)法樹(shù)會(huì)包含兩棵子樹(shù),一棵子樹(shù)表示循環(huán)判斷的表達(dá)式,另外一棵子樹(shù)表示循環(huán)體。然而,在抽象語(yǔ)法樹(shù)中并不存在任何結(jié)點(diǎn)顯式地捕獲while循環(huán)所對(duì)應(yīng)的循環(huán)概念。這個(gè)含義只有當(dāng)while循環(huán)的抽象語(yǔ)法樹(shù)被翻譯為中間表示形式時(shí)才會(huì)被捕獲。在中間表示形式中,會(huì)顯式地給出對(duì)循環(huán)控制表達(dá)式的值進(jìn)行測(cè)試,以及有條件地執(zhí)行該循環(huán)體的概念。

編輯推薦

《世界著名計(jì)算機(jī)教材精選:編譯器構(gòu)造》提供了詳盡清晰的算法,主推在實(shí)踐中學(xué)習(xí)編譯器構(gòu)造的相關(guān)技術(shù),同時(shí)提供了配合教材使用的教學(xué)網(wǎng)站、參考資料以及源碼下載。《世界著名計(jì)算機(jī)教材精選:編譯器構(gòu)造》不僅可以作為計(jì)算機(jī)專業(yè)本科生或研究生的參考教材,同時(shí)也適合相關(guān)領(lǐng)域的軟件工程師、系統(tǒng)分析師等作為參考資料。

圖書(shū)封面

圖書(shū)標(biāo)簽Tags

無(wú)

評(píng)論、評(píng)分、閱讀與下載


    編譯器構(gòu)造 PDF格式下載


用戶評(píng)論 (總計(jì)0條)

 
 

 

250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7