TOP
0
0
即日起~6/30,暑期閱讀書展,好書7折起
編譯原理與技術(第2版)(簡體書)
滿額折

編譯原理與技術(第2版)(簡體書)

商品資訊

人民幣定價:42 元
定價
:NT$ 252 元
優惠價
87219
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:6 點
相關商品
商品簡介
名人/編輯推薦
目次
書摘/試閱

商品簡介

《編譯原理與技術(第2版)》介紹了計算機高級語言編譯程序的基本原理和技術,主要內容包括詞法分析、語法分析、語法制導翻譯的語義分析與中間代碼生成、符號表與運行時存儲空間的組織、代碼優化以及目標代碼的生成。《新編高等院校計算機科學與技術規劃教材:編譯原理與技術(第2版)》著重描述了編譯構造的一些基礎理論,如形式語言、有限自動機和屬性文法。從構造編譯程序的技術角度,描述了編譯程序的各類算法,以及編譯程序的自動構造工具,如詞法分析生成器Lex和語法分析生成器YACC。

名人/編輯推薦

《新編高等院校計算機科學與技術規劃教材:編譯原理與技術(第2版)》系統性較強,基本概念闡述清晰,通俗易懂,便于閱讀,可作為普通高等院校計算機學科及相關專業的本科教材,也可供教師、研究生及有關專業人員學習和參考。

目次

第1章概論
1.1為什么學習編譯
1.2什么叫編譯程序
1.3編譯過程概述
1.3.1詞法分析
1.3.2語法分析
1.3.3語義分析和中間代碼生成
1.3.4代碼優化
1.3.5目標代碼生成
1.4編譯程序的構成
1.4.1基本功能模塊
1.4.2符號表的組織與管理
1.4.3錯誤診斷和報告
1.5其他與編譯有關的概念和技術
1.5.1遍的概念
1.5.2編譯的前端和后端
1.5.3編譯程序的分類
1.5.4編譯技術和軟件工具
1.6如何開發編譯程序
1.6.1編譯程序的自展技術
1.6.2編譯程序的移植技術
1.6.3編譯程序的自動生成技術
1.7編譯系統以及其他相關程序
練習1
第2章詞法分析
2.1詞法分析器的設計
2.1.1詞法分析器的功能與輸出
2.1.2詞法掃描器與符號表
2.1.3詞法分析器的兩種實現模式
2.1.4詞法錯誤的處理
2.2詞法分析器的一種手工實現
2.2.1輸入的預處理
2.2.2超前搜索和最長匹配
2.2.3狀態轉換圖
2.2.4基于狀態轉換圖的詞法分析器的實現
2.3正規表達式
2.3.1符號、符號串與符號集合
2.3.2正規式與正規集
2.3.3擴展的正規式
2.4有限自動機
2.4.1確定的有限自動機
2.4.2不確定的有限自動機NFA
2.4.3從NFA到DFA的等價變換
2.4.4 DFA的最小化
2.4.5從正規式到有限自動機
2.4.6有限自動機在計算機中的表示
2.5詞法分析的自動生成器Lex
2.5.1 Lex概述
2.5.2 Lex的語言與實現
練習2
第3章程序語言的語法描述
3.1文法和語言
3.1.1文法的形式定義
3.1.2推導與歸約
3.1.3分析樹與語法樹
3.1.4文法產生的語言
3.1.5語言的驗證
3.1.6語言的文法表達
3.1.7文法的二義性
3.1.8 BNF與EBNF
……
第4章 自頂向下的語法分析
第5章 自底向上的語法分析
第6章符號表的組織和管理
第7章運行時環境
第8章屬性文法和語義分析
第9章語法制導的中間代碼翻譯
第10章 目標代碼生成
第11章代碼優化
參考文獻

書摘/試閱



1.4.1基本功能模塊
詞法分析器又稱掃描器,對輸入的源程序執行詞法分析工作,輸出單詞符號序列。
語法分析器又稱分析器,對單詞符號序列進行語法分析,識別出各類語法單元,判斷輸人的符號串是否能構成語法正確的“程序”。
語義分析與中間代碼生成器對語法正確的各類程序單元進行語義分析,并把它們翻譯成一定形式的中間代碼。
代碼優化器執行對中間代碼的優化處理。這項工作通常把中間代碼表示成等價的程序流圖、抽象語法樹等形式,根據程序的控制流和數據流等信息進行代碼刪除、代碼換位等改造,提高代碼的執行效率。
目標代碼生成器根據特定的機器把中間代碼翻譯成目標代碼,并進行優化處理。
有的編譯程序把詞法分析器作為一個獨立的子程序,在語法分析的時候調用。有的編譯程序用語法分析器構造并輸出表示語法結構的語法樹,然后依據語法樹進行語義分析和中間代碼生成。還有的編譯程序在語法分析完成之后并不構造語法樹,而是在語法分析的時候調用相應的語義子程序,同時完成語義檢查和中間代碼生成。在這種編譯程序中,掃描器、分析器和中間代碼生成器這三者并不是如圖1.4所示的順序關系,而是以分析器為核心,不斷調用掃描器和語義子程序。
為了完成這五個基本任務,編譯程序還需要組織和管理程序中的每個變量、常數、函數等信息。如果源程序出現了錯誤,需要編譯程序能夠準確識別和正確處理。這些工作分別在符號表管理和錯誤處理的模塊中完成,這些輔助模塊在編譯過程中和編譯的基本功能模塊保持通信。
1.4.2符號表的組織與管理
在編譯過程的各個階段中,經常需要知道程序中各個符號和程序結構的信息。例如,在詞法分析階段,如何判斷一個標識符是否是編程語言的關鍵字,等號“一”是不是該語言定義的運算符;在語法分析和語義分析階段,需要了解函數的標識符是否定義過以及參數的個數、類型、傳遞方式和返回值類型(如果有的話);在語義檢查時,需要知道運算數的類型,以便執行類型檢查和類型轉換;在代碼生成階段,需要知道程序中的變量類型,以便合理地分配內存,而且還必須知道同名的變量是否已經分配了內存、在內存中的地址是什么、是否需要再重新分配內存。
為了能夠獲得諸如此類的信息,需要把編譯程序中的各種符號合理地組織和管理,方便符號信息的添加、查詢、更新和刪除。這些就是編譯程序中符號表管理的主要功能。

您曾經瀏覽過的商品

購物須知

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

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

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

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

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

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

暢銷榜

客服中心

收藏

會員專區