TOP
紅利積點抵現金,消費購書更貼心
編譯原理(第4版)(簡體書)
滿額折

編譯原理(第4版)(簡體書)

商品資訊

人民幣定價:45 元
定價
:NT$ 270 元
優惠價
87235
海外經銷商無庫存,到貨日平均30天至45天
下單可得紅利積點:7 點
商品簡介
作者簡介
目次

商品簡介

全書系統介紹了編譯程序的一般構造原理、基本設計方法和主要實現技術。內容包括:文法和語言基本知識、詞法分析程序的設計原理與構造方法、各種語法分析技術、語法制導翻譯技術與中間代碼生成、符號表的組織和管理、代碼優化、運行時存儲空間的組織與管理、目標代碼生成、並行編譯技術基本常識等。

作者簡介

劉銘,華中科技大學計算機學院教授,1999年進入華中科技大學任教及科研,2012-2013年美國Syracuse大學訪問學者。主持與某研究院合作項目5項、校教學改革項目1項、其他各類橫向項目10余項。

21世紀是信息和數據的時代,搜索引擎、雲計算、大數據、人工智能等新技術熱點不斷湧現,各行各業對計算機應用人才的需求十分巨大。為了適應計算機教育不斷更新、迅猛發展的需要,編者根據多年來講授“編譯原理”課程的教學經驗,編寫出適合計算機類專業學生的編譯教材。本書第3版自出版至今已印刷10次發行近4萬冊,在國務院印發《統籌推進世界一流大學和一流學科建設總體方案》的背景下,在廣大讀者以及電子工業出版社的大力支持下,使得本書有機會修訂再版。
“編譯原理”是一門研究設計和構造編譯程序原理和方法的課程,是計算機類各專業必備的一門重要專業基礎課。這門課程蘊含著計算機科學中分析解決問題的思路、形式化問題和解決問題的方法,對應用軟件和系統軟件的設計與開發有一定的啟發和指導作用;編譯程序構造的原理和技術在軟件工程、逆向工程、軟件再工程、語言翻譯、搜索引擎及其他領域中有著廣泛的應用。
計算機程序如何從源代碼變換成能執行的機器碼?本書主要介紹設計和構造編譯程序的一般原理、基本方法和主要實現技術。通過本課程的學習,使學生掌握編譯系統的結構劃分、工作流程及編譯程序各組成部分的設計原理和常用的編譯技術和方法;另外,書中編譯器的實驗環節,學生需要靈活運用數據結構、匯編語言、自動機理論等多門課程的知識,是培養鍛煉學生解決實際問題能力的重要環節。有誰能想到當年編譯器中詞法自動生成工具Flex的作者之一埃裡克·施密特能當上穀歌的CEO,現在Alphabet公司(穀歌母公司)的董事長希望編譯原理課程為讀者今後從事應用軟件和系統軟件的開發打下一定的理論和實踐基礎。
在本書編寫過程中,充分考慮本課程的特點,力求將基本概念、基本原理和實現方法的思路闡述清楚、條理清晰、通俗易懂、便於自學,為了幫助學生掌握每章的重點和難點,每章附有小結、自測練習題和習題,書末附有自測練習題和習題參考答案。
本教材參考學時數為60~70學時,書中主要算法、例題、習題均以C語言為背景,其主要內容包括:編譯程序結構及各部分功能、文法和語言的基本概念和表示、詞法分析、語法分析、屬性文法與語法制導翻譯技術、符號表、運行時存儲空間的組織、代碼優化與目標代碼生成、並行編譯技術概述等。
“編譯原理”是一門實踐性較強的課程,為了理論聯繫實際,本書在附錄C中擬定了實驗內容、要求及實驗參考算法,並給出了相應的編譯實驗程序的C語言框架。附錄A、附錄B中介紹的自動生成工具也能快速搭建編譯器程序框架。
為了方便教學,本書提供電子課件及實驗源代碼,歡迎任課老師登錄華信教育資源網http://www.hxedu.com.cn免費註冊下載。
這次修訂,除保持第3版簡明、實用的風格並在文字上作進一步潤飾之外,我們作了下面的修改:
(1) 增加了46節“語法分析程序的編寫方法”;
(2) 修改了附錄A詞法分析程序生成器Lex,對自動生成工具Flex的工作流程、文件格式、規則匹配模式進行了詳細描述,並配上示例。
(3) 修改了附錄B語法分析程序生成器YACC,在語法分析自動生成部分,針對工具Bison增加了工作流程、Flex與Bison的聯合使用,並對不同操作系統環境中安裝、運行工具的方法進行歸納。讀者可以按附錄A、附錄B中的介紹,實現下載、安裝並使用自動生成工具,完成詞法、語法分析實驗。
以學習本課程總學時為64學時(52學時講課+12學時上機實驗)為例,建議各章的學時分配如下表所示。
受第3版作者的委託,參加本次修訂工作的有劉銘、駱婷、徐麗萍、祝建華。在本書再版過程中,特別感謝胡倫俊老師的支持;還得到了華中科技大學計算機學院領導的關心和支持,感謝徐蘭芳、周時陽等老師的寶貴意見;電子工業出版社的編輯和有關同志為本書的編輯再版付出了辛勤的勞動,在此對他們表示衷心的感謝。在成書過程中,編者參考了書末所列出的有關文獻,在此,向這些書籍的作者一併表示感謝。
由於編者水平有限,書中難免有些疏忽和錯誤,懇請讀者批評指正。

編者于華中科技大學計算機學院

目次

第1章編譯概述
11翻譯程序與編譯程序
12編譯過程和編譯程序的基本結構
13編譯程序的生成方法
14編譯技術在軟件開發中的應用
本章小結
擴展閱讀
自測練習題1
習題1
第2章文法和語言的基本知識
21概述
22字母表和符號串的基本概念
221字母表和符號串
222符號串的運算
23文法和語言的形式定義
231形式語言
232文法的形式定義
233語言的形式定義
234規範推導和規範歸約
235遞歸規則與文法的遞歸性
24短語、直接短語和句柄
241短語和直接短語
242句柄
25語法樹與文法的二義性
251推導和語法樹
252文法的二義性
253文法二義性的消除
26文法和語言的分類
27有關文法的實用限制和變換
本章小結
擴展閱讀
自測練習題2
習題2
第3章詞法分析與有窮自動機
31詞法分析程序的功能
32單詞符號及輸出單詞的形式
321語言的單詞符號
322詞法分析程序輸出單詞的形式
33語言單詞符號的兩種定義方式
331正規式與正規集
332正規文法與正規式
34正規式與有窮自動機
341確定有窮自動機(DFA)
342非確定有窮自動機(NFA)
343由正規表達式R構造NFA
344NFA確定化為DFA的方法
345DFA的化簡
346有窮自動機到正規式的轉換
35正規文法與有窮自動機
351右線性正規文法到有窮自動機的轉換方法
352左線性正規文法到有窮自動機的轉換方法
353有窮自動機到正規文法的轉換方法
36詞法分析程序的編寫方法
本章小結
擴展閱讀
自測練習題3
習題3
第4章語法分析
41語法分析程序的功能
42自上而下分析法
421非確定的自上而下分析法的思想
422文法的左遞歸性和回溯的消除
423某些非LL(1)文法到LL(1)文法的改寫
424遞歸下降分析法
425預測分析法與預測分析表的構造
43自下而上分析法的一般原理
44算符優先分析法
441方法概述
442算符優先文法的定義
443算符優先關係表的構造
444算符優先分析算法的設計
445優先函數的構造
446算符優先分析法的局限性
45LR分析法
451LR分析器的工作原理和過程
452LR(0)分析法
453SLR(1)分析法
454LR(1)分析法
455LALR(1)分析法
456LR分析法對二義性文法的應用
457LR語法分析中的錯誤恢復技術
46語法分析程序的編寫方法
本章小結
擴展閱讀
自測練習題4
習題4
第5章語法制導翻譯技術和中間代碼生成
51概述
52屬性文法
53語法制導翻譯概述
54中間語言
541逆波蘭式
542三元式和樹形表示
543四元式和三地址代碼
55自下而上語法制導翻譯
551簡單算術表達式和賦值語句的翻譯
552布爾表達式的翻譯
553控制語句的翻譯
554循環語句的翻譯
555簡單說明語句的翻譯
556含數組元素的賦值語句的翻譯
557過程和函數調用語句的翻譯
56遞歸下降語法制導的翻譯
本章小結
擴展閱讀
自測練習題5
習題5
第6章符號表的組織與管理
61符號表的作用
62符號表的組織
63符號表的建立和查找
本章小結
擴展閱讀
自測練習題6
習題6
第7章代碼優化
71優化概述
72局部優化
721劃分基本塊的方法
722基本塊的DAG表示
723利用DAG進行基本塊的優化處理
73循環優化
731程序流圖與循環
732循環查找
733循環優化
74窺孔優化
本章小結
擴展閱讀
自測練習題7
習題7
第8章運行時的存儲組織與管理
81概述
82靜態存儲分配
83棧式存儲分配
831簡單棧式存儲分配
832嵌套過程的棧式存儲分配
84堆式存儲分配
85臨時變量的存儲分配
本章小結
擴展閱讀
自測練習題8
習題8
第9章目標代碼生成
91概述
92假想的計算機模型
93簡單代碼生成器
931待用信息與活躍信息
932代碼生成算法
933寄存器的分配
94代碼生成器的自動生成技術
本章小結
擴展閱讀
自測練習題9
習題9
第10章並行編譯技術基本常識
101並行編譯技術的引入
102並行編譯系統的功能和結構
1021並行編譯系統的功能
1022並行編譯系統的結構
103向量語言編譯技術
1031向量語法處理
1032向量結構優化
104共享存儲器並行機並行編譯技術
1041預編譯
1042可再入的目標代碼
本章小結
習題10
附錄A詞法分析程序生成器Lex
A1詞法分析程序生成器Lex簡介
A2Lex輸入文件的格式
A3正規表達式的Lex約定
A4Lex源程序中的規則部分
A5Flex的命令選項
A6Lex程序示例
附錄B語法分析程序生成器YACC
B1語法分析程序YACC簡介
B2YACC輸入文件的格式
B3YACC各部分的書寫格式
B31定義部分
B32規則部分
B33輔助程序部分
B4YACC的內置名稱和定義機制
B5Flex與Bison的聯合使用
附錄C編譯程序實驗
C1詞法分析
C11實驗目的
C12實驗要求
C13詞法分析程序的算法思想
C14詞法分析程序的C語言程序框架
C2語法分析
C21實驗目的
C22實驗要求
C23語法分析程序的算法思想
C24語法分析程序的C語言程序框架
C3語義分析
C31實驗目的
C32實驗要求
C33語義分析程序的C語言程序框架
C4算符優先分析法
C5實驗實例
C6正規式轉換成自動機的圖形表示
C61實驗目的
C62實驗要求
C63參考設計思路
C64參考算法
附錄D自測練習題與習題參考答案
參考文獻

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 235
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區