出版時(shí)間:2009-7 出版社:清華大學(xué)出版社 作者:康慕寧,任國(guó)霞,唐晶磊 編著 頁(yè)數(shù):207
前言
編譯原理是計(jì)算機(jī)專(zhuān)業(yè)中一門(mén)重要的專(zhuān)業(yè)課程。設(shè)置本課程的目的,在于系統(tǒng)地向?qū)W生講述編譯系統(tǒng)的結(jié)構(gòu)、工作流程、設(shè)計(jì)原理和實(shí)現(xiàn)技術(shù)。通過(guò)本書(shū)的學(xué)習(xí),使學(xué)生掌握在編譯理論和方法方面的基本知識(shí),也具有設(shè)計(jì)實(shí)現(xiàn)、分析和維護(hù)編譯程序方面的初步能力,也可以提高學(xué)生科學(xué)思維能力和綜合運(yùn)用專(zhuān)業(yè)知識(shí)與解決實(shí)際問(wèn)題的能力,所以這門(mén)課程在計(jì)算機(jī)專(zhuān)業(yè)體系中占有十分重要的地位。編譯原理是一門(mén)理論性和實(shí)踐性都比較強(qiáng)的課程。編者在編寫(xiě)過(guò)程中,力圖盡可能使本教材達(dá)到知識(shí)內(nèi)容組織合理,由淺入深,循序漸進(jìn)的目的。書(shū)中詳細(xì)而系統(tǒng)地介紹了程序設(shè)計(jì)語(yǔ)言翻譯的基本原理與方法,同時(shí)本書(shū)的特色主要體現(xiàn)在每章開(kāi)始都有本章簡(jiǎn)介,章末均有小結(jié),另外,每章后面都有與講解內(nèi)容緊密相關(guān)的習(xí)題,可以使學(xué)生更好地掌握所學(xué)的知識(shí)內(nèi)容,也可以成為考研學(xué)生很好的一本參考書(shū)籍。本書(shū)共分為11章,第1~6章由西北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院的康慕寧教授編寫(xiě),第7~9章由西北農(nóng)林科技大學(xué)信息工程學(xué)院的唐晶磊編寫(xiě),第10、11章由西北農(nóng)林科技大學(xué)信息工程學(xué)院的任國(guó)霞副教授編寫(xiě)。我們特別感謝北京工業(yè)大學(xué)蔣宗禮教授,蔣教授對(duì)本書(shū)進(jìn)行了仔細(xì)的審閱,提出了許多寶貴的意見(jiàn)及指導(dǎo)性的建議。這里也特別感謝清華大學(xué)出版社的大力支持,使本書(shū)得以順利出版。由于我們的能力有限,書(shū)中難免有一些錯(cuò)誤和不足,敬請(qǐng)讀者批評(píng)指正。
內(nèi)容概要
本書(shū)系統(tǒng)地闡述了編譯系統(tǒng)的結(jié)構(gòu)、工作流程、設(shè)計(jì)原理和實(shí)現(xiàn)技術(shù)。主要內(nèi)容包括程序設(shè)計(jì)語(yǔ)言基本知識(shí)、詞法分析、語(yǔ)法分析、語(yǔ)義分析與屬性文法、語(yǔ)法制導(dǎo)的代碼生成、運(yùn)行時(shí)存儲(chǔ)空間組織、代碼生成與優(yōu)化等。通過(guò)本書(shū)的學(xué)習(xí),使學(xué)生掌握編譯理論和方法的基本知識(shí),具有設(shè)計(jì)實(shí)現(xiàn)、分析和維護(hù)編譯程序方面的初步能力,提高學(xué)生科學(xué)思維能力和綜合運(yùn)用專(zhuān)業(yè)知識(shí)的能力與解決實(shí)際問(wèn)題的能力。書(shū)中每章開(kāi)始有本章內(nèi)容簡(jiǎn)介,每章后面都有與內(nèi)容緊密相關(guān)、難度適宜的習(xí)題,可以使學(xué)生更好地掌握本章所學(xué)的知識(shí)內(nèi)容。 本書(shū)適合作為高等學(xué)校計(jì)算機(jī)及相關(guān)專(zhuān)業(yè)的教材,也可以作為考研學(xué)生的一本參考書(shū)。
作者簡(jiǎn)介
康慕寧,1982年西北大學(xué)計(jì)算機(jī)系本科畢業(yè),獲理學(xué)學(xué)士學(xué)位;1984年西北工業(yè)大學(xué)計(jì)算機(jī)系研究生畢業(yè),獲工學(xué)碩士學(xué)位?,F(xiàn)為西北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院軟件與理論系教授,中國(guó)計(jì)算機(jī)學(xué)會(huì)高級(jí)會(huì)員。多年在教學(xué)一線主講計(jì)算機(jī)專(zhuān)業(yè)本科及研究生編譯原理、形式語(yǔ)言與自動(dòng)機(jī)、組合數(shù)學(xué)
書(shū)籍目錄
第1章 編譯程序理論概述 1.1 導(dǎo)言 1.2 語(yǔ)言及其翻譯 1.3 語(yǔ)法的功能 1.4 程序設(shè)計(jì)語(yǔ)言的發(fā)展 1.5 編譯程序的結(jié)構(gòu) 1.5.1 詞法分析 1.5.2 字符串表 1.5.3 語(yǔ)法分析 1.5.4 語(yǔ)義分析 1.5.5 符號(hào)表 1.5.6 代碼優(yōu)化程序 1.5.7 代碼生成程序 1.6 特殊約定 縮寫(xiě)詞與關(guān)鍵字 習(xí)題第2章 語(yǔ)法及其分類(lèi) 2.1 概述 2.2 文法 2.2.1 字母表與字符串 2.2.2 非終結(jié)符與產(chǎn)生式 2.2.3 文法的例子 2.3 文法及語(yǔ)言的Chomskey分類(lèi) 2.4 規(guī)范推導(dǎo) 2.5 文法的二義性 習(xí)題第3章 掃描器與正規(guī)語(yǔ)言 3.1 詞法分析程序簡(jiǎn)介 3.2 正規(guī)表達(dá)式 3.2.1 正規(guī)表達(dá)式代數(shù) 3.2.2 正規(guī)表達(dá)式的性質(zhì) 3.3 有限狀態(tài)自動(dòng)機(jī) 3.4 非確定的有限狀態(tài)自動(dòng)機(jī) 3.5 將正規(guī)文法轉(zhuǎn)換為自動(dòng)機(jī) 3.6 NDFA的確定化及化簡(jiǎn) 3.7 從有限狀態(tài)自動(dòng)機(jī)轉(zhuǎn)換到正規(guī)文法 3.8 有限自動(dòng)機(jī)在計(jì)算機(jī)中的實(shí)現(xiàn) 3.9 掃描器實(shí)現(xiàn)中的特殊問(wèn)題 3.9.1 輸入符號(hào)表 3.9.2 掃描器自動(dòng)機(jī)中的終止?fàn)顟B(tài) 3.9.3 刪除空白符號(hào)與注釋 3.9.4 輸出單詞 3.10 字符串表的實(shí)現(xiàn) 3.11 保留字 3.12 使用掃描器自動(dòng)生成工具 縮寫(xiě)詞與關(guān)鍵字 習(xí)題第4章 語(yǔ)法分析與前后文無(wú)關(guān)文法 4.1 導(dǎo)論 4.2 下推自動(dòng)機(jī) 4.2.1 停機(jī)條件的等價(jià)性 4.2.2 從前后文無(wú)關(guān)文法CFG構(gòu)造PDA ……第5章 語(yǔ)義分析與屬性文法第6章 語(yǔ)法制導(dǎo)的代碼生成第7章 符號(hào)表第8章 運(yùn)行時(shí)存儲(chǔ)空間的組織與管理第9章 代碼優(yōu)化第10章 目標(biāo)代碼生成參考文獻(xiàn)
章節(jié)摘錄
插圖:第1章 編譯程序理論概述1.1 導(dǎo)言編譯程序設(shè)計(jì)是少數(shù)幾個(gè)由抽象的理論改變?nèi)藗兙帉?xiě)程序方法的計(jì)算機(jī)科學(xué)領(lǐng)域之一。最早的編譯程序采用傳統(tǒng)的“對(duì)號(hào)入座”的程序設(shè)計(jì)技術(shù),直到“語(yǔ)法制導(dǎo)”分析程序的出現(xiàn)才得到改變。一個(gè)好的編譯程序的任何部分都或多或少地與語(yǔ)法相關(guān),因?yàn)檎Z(yǔ)法理論可以驅(qū)動(dòng)編譯程序的設(shè)計(jì),并使編譯程序的設(shè)計(jì)清晰、易實(shí)現(xiàn)。1.2 語(yǔ)言及其翻譯計(jì)算機(jī)語(yǔ)言像自然語(yǔ)言一樣,為了溝通信息而定義了用單詞構(gòu)造句子的方法。自然語(yǔ)言可以表達(dá)、傳遞人們心靈的感覺(jué)、客觀的世界真相、人們對(duì)這些感覺(jué)和真相提出的問(wèn)題以及要求他人聽(tīng)從的指令等等,但計(jì)算機(jī)語(yǔ)言則被限制用于描述要求接受該語(yǔ)言的機(jī)器聽(tīng)從的指令。自然語(yǔ)言限制了允許說(shuō)的句子的形式,例如,人們可以說(shuō):“約翰吃香蕉”,但不能說(shuō):“約翰香蕉吃”。第一句語(yǔ)法正確,而第二句則不符合中文的語(yǔ)法。又如,英文句子John eats an apple是正確的句子,而eats Jqbn apple an卻不符合英語(yǔ)語(yǔ)法。會(huì)英、德兩種語(yǔ)言的人馬上就知道德語(yǔ)句子John iBt einen Apfel與Johneats an apple說(shuō)的是一回事,但對(duì)只熟悉其中一種語(yǔ)言的人來(lái)說(shuō),就不知道兩句話同義了。因?yàn)?,單詞iBt在英語(yǔ)中無(wú)任何意義,同樣eats也不是德語(yǔ)中的正確單詞。當(dāng)一個(gè)不懂德語(yǔ)的英國(guó)人想與不懂英語(yǔ)的德國(guó)人相互交流時(shí),就需要有一個(gè)翻譯。在自然語(yǔ)言中,翻譯是將他所接收的一種語(yǔ)言的信息表述為另一種語(yǔ)言的人。他將所讀的英語(yǔ)句子John eats an apple寫(xiě)成德語(yǔ)句子John iBt einen Apfel。對(duì)于錯(cuò)誤的句子eats John apple an,他將無(wú)法翻譯。
圖書(shū)封面
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版