-
>
全國(guó)計(jì)算機(jī)等級(jí)考試最新真考題庫(kù)模擬考場(chǎng)及詳解·二級(jí)MSOffice高級(jí)應(yīng)用
-
>
決戰(zhàn)行測(cè)5000題(言語(yǔ)理解與表達(dá))
-
>
軟件性能測(cè)試.分析與調(diào)優(yōu)實(shí)踐之路
-
>
第一行代碼Android
-
>
JAVA持續(xù)交付
-
>
EXCEL最強(qiáng)教科書(完全版)(全彩印刷)
-
>
深度學(xué)習(xí)
小型編譯器設(shè)計(jì)實(shí)踐 版權(quán)信息
- ISBN:9787121471964
- 條形碼:9787121471964 ; 978-7-121-47196-4
- 裝幀:平塑
- 冊(cè)數(shù):暫無(wú)
- 重量:暫無(wú)
- 所屬分類:>>
小型編譯器設(shè)計(jì)實(shí)踐 內(nèi)容簡(jiǎn)介
本書主要著力于敘述編譯器具體的設(shè)計(jì)和編程細(xì)節(jié),并不側(cè)重探究編譯器的設(shè)計(jì)理論。本書以目前較為流行的兩款微處理器(MCU)為例,設(shè)計(jì)、開發(fā)相應(yīng)的C語(yǔ)言編譯器工具包:(1) 加強(qiáng)型PIC16Fxxxx系列MCU、8位微處理器、RISC系統(tǒng)結(jié)構(gòu)、小端式體系(little-endian)。(2) STM8系列MCU、8位微處理器、CISC系統(tǒng)結(jié)構(gòu)、大端式體系(big-endian)。本書以實(shí)際目標(biāo)處理器為對(duì)象,介紹和展現(xiàn)編譯器設(shè)計(jì)的全部詳細(xì)過程。
小型編譯器設(shè)計(jì)實(shí)踐 目錄
第1章 工具準(zhǔn)備和系統(tǒng)設(shè)置............................................................................................2
1.1 GNU C/C 編譯工具的選擇..................................................................................2
1.1.1 MinGW ........................................................................................................ 2
1.1.2 DJGPP .......................................................................................................... 2
1.1.3 Cygwin ......................................................................................................... 2
1.2 解析工具構(gòu)造器 ...................................................................................................... 3
1.3 工具的安裝 .............................................................................................................. 3
1.4 目標(biāo)編譯器運(yùn)行前的系統(tǒng)設(shè)置 .............................................................................. 4
第2章 預(yù)處理器的設(shè)計(jì)...................................................................................................5
2.1 預(yù)處理器(C/C 版) ........................................................................................... 6
2.1.1 項(xiàng)目文件及其設(shè)置......................................................................................6
2.1.2 任務(wù)和算法.................................................................................................. 7
2.2 源程序預(yù)處理器(flex 版) ................................................................................. 11
2.2.1 正規(guī)表達(dá)式簡(jiǎn)介........................................................................................12
2.2.2 預(yù)處理器設(shè)計(jì)實(shí)戰(zhàn)....................................................................................14
2.3 本章小結(jié) ................................................................................................................ 20
第3章 編譯器設(shè)計(jì)初步實(shí)踐..........................................................................................21
3.1 設(shè)計(jì)簡(jiǎn)介 ................................................................................................................ 21
3.2 一個(gè)簡(jiǎn)單的 C 語(yǔ)言關(guān)鍵字識(shí)別器........................................................................22
3.2.1 工程項(xiàng)目文件............................................................................................22 3.2.2 項(xiàng)目運(yùn)行主程序........................................................................................23
小型編譯器設(shè)計(jì)實(shí)踐
3.2.3 詞法解析自動(dòng)機(jī)部分................................................................................23
3.2.4 詞法解析 C 語(yǔ)言部分 ............................................................................... 24
3.3 編譯器雛形(flex 和 bison 的使用) .................................................................. 25
3.3.1 問題的提出和任務(wù)....................................................................................25
3.3.2 工程文件 makefile.....................................................................................26
3.3.3 詞法解析規(guī)則部分....................................................................................26
3.3.4 詞法解析的啟動(dòng)........................................................................................27
3.3.5 語(yǔ)法解析器文本及其基本格式 ................................................................ 27
3.3.6 語(yǔ)法解析器文本各區(qū)域的內(nèi)容 ................................................................ 28
3.4 語(yǔ)法解析和詞法解析之間的數(shù)值傳遞 ................................................................ 30
3.4.1 語(yǔ)法解析器文本的定義部分 .................................................................... 31
3.4.2 語(yǔ)法解析器識(shí)別規(guī)則部分 ........................................................................ 32
3.4.3 詞法解析器解析規(guī)則部分 ........................................................................ 33
3.5 編譯樹的構(gòu)建 ........................................................................................................ 34
3.5.1 編譯樹中的數(shù)據(jù)類型和結(jié)構(gòu) .................................................................... 34
3.5.2 節(jié)點(diǎn)生成和處理函數(shù)................................................................................35
3.5.3 語(yǔ)法解析器文本的定義部分 .................................................................... 36
3.5.4 語(yǔ)法解析器文本的語(yǔ)法解析識(shí)別規(guī)則部分 ............................................ 36
3.6 源程序語(yǔ)句代碼的截取和嵌入 ............................................................................ 38
3.6.1 緩沖區(qū)與相關(guān)函數(shù)....................................................................................38
3.6.2 截取源程序代碼并送入緩沖區(qū)中 ............................................................ 38
3.6.3 讀取源代碼緩沖內(nèi)容................................................................................39
3.6.4 增加新定義并擴(kuò)充 node 數(shù)據(jù)結(jié)構(gòu) .......................................................... 39
3.6.5 支持函數(shù)和程序........................................................................................40
3.6.6 在源程序片段中嵌入節(jié)點(diǎn) ........................................................................ 41
3.7 編譯樹的顯示 ........................................................................................................ 41
3.7.1 用于顯示編譯樹的函數(shù) ............................................................................ 42 3.7.2 編譯樹的顯示操作....................................................................................42
第4章 編譯器設(shè)計(jì)實(shí)戰(zhàn).................................................................................................44 4.1 對(duì) C 語(yǔ)言的詞法解析............................................................................................44
VIII
4.1.1 詞法解析宏定義部分................................................................................44
4.1.2 各種常數(shù)解析識(shí)別....................................................................................45
4.1.3 C 語(yǔ)言關(guān)鍵字和標(biāo)識(shí)符解析 .................................................................... 46
4.1.4 C 語(yǔ)言各種操作運(yùn)算符識(shí)別 .................................................................... 46
4.1.5 關(guān)于字符和字符串常數(shù)的處理 ................................................................ 47
4.2 對(duì) C 語(yǔ)言的語(yǔ)法解析............................................................................................ 47
4.2.1 描述特征的 attrib 完整結(jié)構(gòu) ..................................................................... 48
4.2.2 各類 node 數(shù)據(jù)結(jié)構(gòu)的完善 ...................................................................... 48
4.2.3 語(yǔ)法解析定義部分的完善 ........................................................................ 49
4.2.4 函數(shù)聲明/定義的完善............................................................................... 51
4.2.5 運(yùn)算語(yǔ)法和運(yùn)算符優(yōu)先確定 .................................................................... 52
4.2.6 變量定義語(yǔ)法規(guī)則的完善 ........................................................................ 53
4.3 支持預(yù)處理等語(yǔ)句的語(yǔ)法解析 ............................................................................ 56
4.3.1 用于預(yù)處理語(yǔ)句的新增變量 .................................................................... 56
4.3.2 用于預(yù)處理語(yǔ)句的新增解析狀態(tài) ............................................................ 57
4.3.3 用于預(yù)處理語(yǔ)句的解析 ............................................................................ 57
4.3.4 用于預(yù)處理語(yǔ)句的節(jié)點(diǎn)和數(shù)據(jù)類型 ........................................................ 58
4.4 支持結(jié)構(gòu)化數(shù)據(jù)的語(yǔ)法解析 ................................................................................ 61
4.5 支持對(duì) typedef 的語(yǔ)法解析 ...........................
小型編譯器設(shè)計(jì)實(shí)踐 作者簡(jiǎn)介
蘇孟晉,出生于上海,祖籍江蘇常州。1978年考入浙江大學(xué)計(jì)算機(jī)專業(yè)就讀,1982年獲學(xué)士學(xué)位。同年開始在上海同濟(jì)大學(xué)計(jì)算機(jī)專業(yè)供職,1987年獲講師職稱。1990年赴美留學(xué),于1992年獲碩士學(xué)位。
- >
龍榆生:詞曲概論/大家小書
- >
中國(guó)人在烏蘇里邊疆區(qū):歷史與人類學(xué)概述
- >
山海經(jīng)
- >
月亮與六便士
- >
李白與唐代文化
- >
名家?guī)阕x魯迅:朝花夕拾
- >
唐代進(jìn)士錄
- >
新文學(xué)天穹兩巨星--魯迅與胡適/紅燭學(xué)術(shù)叢書(紅燭學(xué)術(shù)叢書)