本書對編譯各部分知識的要點和難點,對解題的方法和技巧作了全面的分析。按自測題、歷年考研試題、典型問題和典型方法等不同層次,提供了大量編譯習題及其分析和解答。更重要的是,通過對編譯原理基本思路透徹的分析、歸納和總結,通過對典型問題的剖析,使讀者能更好地掌握編譯的學習方法(包括解題的基本方法)。本書表述嚴謹,推理縝密,語言精練,實例豐富。對高校計算機專業(yè)學習編譯課程的學生,是一本合適的參考書;對相關專業(yè)的畢業(yè)生,是一本難度適中的考研教材;對有志于計算機科學事業(yè)者,是一本可選的自學讀本;對從事編譯課程教學的教師,也不失為一本良好的教學參考書。本書提供的每一層次的習題,均附有解答,以便于讀者學習之用。在計算機軟件科學中,編譯是較早在實踐上和理論上同時取得巨大發(fā)展的一個分支。世界上第一個編譯程序,早在20世紀50年代中期就已問世。經過近半個世紀的努力,編譯理論和技術伴隨著計算機技術的發(fā)展而迅速完備化和系統(tǒng)化,形成了一個完整的理論體系,并且開發(fā)出了豐富的編譯程序的實現語言、實現環(huán)境和開發(fā)工具。在此基礎上,設計并實現一個編譯程序不再是高不可攀的事情。編譯技術,作為一門計算機軟件技術,內涵極為豐富。有關詞法、文法的分析,有關表格的處理,有關符號信息的處理方法,有關清晰有效的算法描述方法,有關形形色色數據結構的運用,自動機理論及其對規(guī)劃程序的指導作用……,凡此種種,不僅為編譯科學自身提供了堅強的支持,而且為軟件工程和各種軟件開發(fā)技術的發(fā)展和完備,為整個軟件學科的發(fā)展作出了寶貴的貢獻。也正因為這個原因,編譯原理成為計算機專業(yè)一門重要的專業(yè)課程,也成為高等學校計算機專業(yè)研究生入學考試的一項重要內容。由于編譯原理這門課內涵豐富,外延廣泛,有一定的復雜性,所以學習者掌握起來有一定的難度,解答習題和分析問題也往往會遇到一定的困難。因此,一本編譯的習題書,一本有關分析和解答編譯問題的參考書,對每個計算機專業(yè)的學習者都是有益處的。編者有多年的教學實踐,通過匯集、加工、整理資料,編寫了這本《編譯原理解題與分析》,目的在于:為學習編譯原理者提供一本合適的參考書;為考研復習者提供一本有價值的帶分析的習題書。本書中,按典型問題和典型方法、歷年考研試題、自測題等不同層次,提供了大量編譯習題。但是,編者更多的是想通過對編譯原理基本思路透徹的歸納、分析和總結,并對典型問題的剖析,使編譯的學習方法,包括解題的基本方法能給學習者留下較為深刻的印象,從而為把厚厚的編譯教材讀"薄"。全書分為10章:第1章是編譯及相關知識的概述:第2章是文法和語言的形式定義和編譯中的概念和原理的的綜合;第3章介紹詞法分析方法和單詞的識別工具(主要介紹了自動機理論);第4章和第5章按自頂向下和自底向上介紹了語法分析的算法;第6章論述語法制導翻譯和中間代碼生成的種種處理;第7章是符號表的組織和處理方法,第8章是存儲組織與分配;第9章和第10章分別介紹了代碼優(yōu)化和目標代碼生成的相關內容。重點在第2、3、4、5章。每一章按本章導讀、知識結構、知識要點掃描、難點剖析、典型問題和典型方法、歷年試題解析、自測題和自測題參考答案等8個部分。典型問題和典型方法指出了每章難點、要點、關鍵點所在,并注意分析產生錯誤的根源:歷年試題解析按年份的次序選編了全國名校的研究生入學試題。這兩部分的習題均有一定的難度,均附有解題思路和分析解答過程,以適合不同層次的學生的需求。本書難易適當,適用于計算機本科學生作為編譯原理課程的參考書,也適用于報考計算機專業(yè)研究生的學生作為復習指導書。編寫本書時,編者盡力將多年教學實踐中的體會和發(fā)現的各種難點和關鍵問題以直觀、簡潔的形式蘊含在實際例題的分析之中,旨在加深讀者對知識的理解。由于編者水平有限,加之時間緊迫,習題量大,所以本書無論在編排上和內容上,都難免會有不合理及疏漏之處,請廣大讀者批評指正。本書由王海源主編,參加編寫的還有張世正教授、胡金初副教授、馬燕副教授、胡荷芬副教授、徐偉祖、俞嶸、張兆濱和丁北英四位高級工程師,許航老師、陳軍華老師以及王蓓、張梅女士也給予我們真誠的幫助。在此,表示由衷的感謝!作者