編譯技術(shù)

出版時(shí)間:2004-1  出版社:高等教育出版社  作者:張守志 編  

內(nèi)容概要

  《編譯技術(shù)》系統(tǒng)地介紹了編譯程序構(gòu)造的一般原理和技術(shù),包括詞法分析、語(yǔ)法分析、中間代碼生成、代碼優(yōu)化和目標(biāo)代碼生成等內(nèi)容。本書(shū)的重點(diǎn)是介紹編譯各階段中所涉及到的技術(shù)與方法以及不同階段的相互聯(lián)系。全書(shū)內(nèi)容豐富、概念清晰、邏輯性強(qiáng)、通俗易懂,既便于教學(xué),也適宜于自學(xué)?! ”緯?shū)可作為計(jì)算機(jī)相關(guān)專業(yè)獨(dú)立本科段自學(xué)考試教材,也可作為高等院校計(jì)算機(jī)類或信息類相關(guān)專業(yè)的本科教材或教學(xué)參考書(shū),亦可供從事計(jì)算機(jī)軟件開(kāi)發(fā)的科技人員參考。

書(shū)籍目錄

編譯技術(shù)第1章 概論1.1 編譯程序的概念1.2 編譯過(guò)程概述1.3 編譯程序的結(jié)構(gòu)1.4 學(xué)習(xí)構(gòu)造編譯程序習(xí)題第2章 文法和語(yǔ)言2.1 符號(hào)和符號(hào)串2.2 文法和語(yǔ)言的形式定義2.2.1 文法的直觀概念2.2.2 文法的形式定義2.2.3 語(yǔ)言的形式定義2.3 文法的類型2.4 上下文無(wú)關(guān)文法及其語(yǔ)法樹(shù)2.4.1 上下文無(wú)關(guān)文法2.4.2 語(yǔ)法樹(shù)的概念2.4.3 二義性2.5 句型的分析2.5.1 分析技術(shù)2.5.2 句型分析的有關(guān)問(wèn)題習(xí)題第3章 詞法分析3.1 詞法分析器的設(shè)計(jì)3.1.1 詞法分析器的功能和輸出形式3.1.2 詞法分析器作為一個(gè)獨(dú)立子程序3.1.3 詞法分析器的實(shí)現(xiàn)3.2 正規(guī)表達(dá)式3.2.1 正規(guī)文法3.2.2 正規(guī)式3.2.3 正規(guī)文法與正規(guī)式3.3 有限自動(dòng)機(jī)3.3.1 確定有限自動(dòng)機(jī)3.3.2 非確定有限自動(dòng)機(jī)3.3.3 nfa到dfa的轉(zhuǎn)換3.3.4 確定有限自動(dòng)機(jī)的化簡(jiǎn)3.4 正規(guī)表達(dá)式和有限自動(dòng)機(jī)的轉(zhuǎn)換3.5 正規(guī)文法和有限自動(dòng)機(jī)的轉(zhuǎn)換3.6 詞法分析器的自動(dòng)產(chǎn)生習(xí)題第4章 語(yǔ)法分析4.1 自上而下和自下而上分析法4.1.1 歸約與分析樹(shù)4.1.2 規(guī)范歸約簡(jiǎn)述4.1.3 符號(hào)棧的使用與分析樹(shù)的表示4.2 遞歸下降分析法4.2.1 帶回溯的分析法4.2.2 不帶回溯的遞歸下降分析法4.3 算符優(yōu)先分析法4.3.1 直觀算符優(yōu)先分析法4.3.2 算符優(yōu)先文法和優(yōu)先表的構(gòu)造4.3.3 算符優(yōu)先分析算法的設(shè)計(jì)4.3.4 優(yōu)先函數(shù)4.4 lr(o)分析法4.4.1 lr分析器4.4.2 lr文法4.4.3 lr(0)項(xiàng)目集規(guī)范簇的構(gòu)造4.5 slr分析法4.6 規(guī)范lr分析法4.6.1 lr(1)項(xiàng)目集簇的構(gòu)造4.6.2 lr(1)分析表的構(gòu)造4.7 lalr分析法4.8 二義文法的應(yīng)用4.8.1 使用優(yōu)先級(jí)和結(jié)合規(guī)則來(lái)解決分析動(dòng)作的沖突4.8.2 懸空else的二義性4.9 語(yǔ)法分析器的生成器yacc習(xí)題第5章 語(yǔ)法制導(dǎo)翻譯和中間代碼生成第6章 符號(hào)表第7章 運(yùn)行時(shí)的存儲(chǔ)組織第8章 代碼優(yōu)化第9章 代碼生成附錄 編譯程序?qū)崿F(xiàn)參考文獻(xiàn)編譯技術(shù)(6370)自學(xué)考試大綱

章節(jié)摘錄

  第1章 概論  從理論上說(shuō),構(gòu)造專用計(jì)算機(jī)來(lái)直接執(zhí)行用某種高級(jí)語(yǔ)言編寫(xiě)的程序是可能的。但是,目前的機(jī)器能執(zhí)行的是非常低級(jí)的語(yǔ)言,即機(jī)器語(yǔ)言。那么,高級(jí)語(yǔ)言最終是怎樣在計(jì)算機(jī)上執(zhí)行的呢?  術(shù)語(yǔ)編譯代表從面向人的源語(yǔ)言表示的算法到面向硬件的目標(biāo)語(yǔ)言表示的算法的一個(gè)等價(jià)變換。本章將簡(jiǎn)要介紹程序編譯的過(guò)程及編譯程序的結(jié)構(gòu)?! ?.1 編譯程序的概念  當(dāng)沒(méi)有現(xiàn)成軟件來(lái)解決所需要計(jì)算的問(wèn)題時(shí),用戶可以利用高級(jí)語(yǔ)言編制程序來(lái)解決?,F(xiàn)代計(jì)算機(jī)系統(tǒng)一般都含有不止一個(gè)高級(jí)語(yǔ)言的編譯程序,對(duì)有些高級(jí)語(yǔ)言甚至配置了幾個(gè)不同性能的編譯程序,供用戶按不同需要進(jìn)行選擇。高級(jí)語(yǔ)言編譯程序是計(jì)算機(jī)系統(tǒng)軟件的最重要組成部分之一,也是用戶最直接關(guān)心的工具之一。  在計(jì)算機(jī)上執(zhí)行一個(gè)高級(jí)語(yǔ)言程序一般要分為兩步:第一步,用一個(gè)編譯程序把高級(jí)語(yǔ)言程序翻譯成機(jī)器語(yǔ)言程序;第二步,運(yùn)行所得的機(jī)器語(yǔ)言程序求得計(jì)算結(jié)果?! ⊥ǔKf(shuō)的翻譯程序是指這樣的一個(gè)程序,它能夠把某一種語(yǔ)言程序(稱為源語(yǔ)言程序)改造成另一種語(yǔ)言程序(稱為目標(biāo)語(yǔ)言程序),而后者與前者在邏輯上是等價(jià)的。如果源語(yǔ)言是諸如FORTRAN、Pascal、ALGOL或COBOL這樣的“高級(jí)語(yǔ)言”,而目標(biāo)語(yǔ)言是諸如匯編語(yǔ)言或機(jī)器語(yǔ)言之類的“低級(jí)語(yǔ)言”,這樣的一個(gè)翻譯程序就稱為編譯程序。如果把編譯程序看成一個(gè)“黑盒子”,它所執(zhí)行的轉(zhuǎn)換工作可以用圖1.1來(lái)說(shuō)明?! 「呒?jí)語(yǔ)言程序除了像上面所說(shuō)的先編譯后執(zhí)行外,有時(shí)也可“解釋”執(zhí)行。一個(gè)源語(yǔ)言的解釋程序是這樣的程序,它以該語(yǔ)言寫(xiě)的源程序作為輸入,但不產(chǎn)生目標(biāo)程序,而是邊解釋邊執(zhí)行源程序本身。本書(shū)將不對(duì)解釋程序作專門(mén)的討論。實(shí)際上,許多編譯程序的構(gòu)造與實(shí)現(xiàn)技術(shù)同樣適用于解釋程序?!  ?/pre>

圖書(shū)封面

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


    編譯技術(shù) 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