自己動手寫編譯器、鏈接器 在線電子書 pdf 下載 txt下載 epub 下載 mobi 下載 2025
☆☆☆☆☆
簡體網頁||
繁體網頁
王博俊 作者
清華大學齣版社
譯者
2015-1-1 出版日期
0 頁數
37.80 價格
平裝
叢書系列
9787302381365 圖書編碼
自己動手寫編譯器、鏈接器 在線電子書 圖書標籤:
編譯原理
編譯器
計算機科學
編譯
C/C++
計算機
鏈接
連接器
喜歡 自己動手寫編譯器、鏈接器 在線電子書 的讀者還喜歡
下載鏈接在頁面底部
下載連結1
下載連結2
下載連結3
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
發表於2025-04-27
自己動手寫編譯器、鏈接器 在線電子書 epub 下載 mobi 下載 pdf 下載 txt 下載 2025
自己動手寫編譯器、鏈接器 在線電子書 epub 下載 pdf 下載 mobi 下載 txt 下載 2025
自己動手寫編譯器、鏈接器 在線電子書 pdf 下載 txt下載 epub 下載 mobi 下載 2025
自己動手寫編譯器、鏈接器 在線電子書 用戶評價
評分
☆☆☆☆☆
剛開始詞法分析,語法分析,節的數據生成看的還可以,但是到後麵的語義分析和gencode部分太抽象,不得已把代碼down下來,一遍一遍跑自己寫的test,跟蹤函數... 花瞭兩個月時間一天一兩個小時,終於把所有代碼都理解瞭。收獲很大,但是由於其沒有中間代碼,這樣的話導緻在此基礎上的優化很難搞...
評分
☆☆☆☆☆
剛開始詞法分析,語法分析,節的數據生成看的還可以,但是到後麵的語義分析和gencode部分太抽象,不得已把代碼down下來,一遍一遍跑自己寫的test,跟蹤函數... 花瞭兩個月時間一天一兩個小時,終於把所有代碼都理解瞭。收獲很大,但是由於其沒有中間代碼,這樣的話導緻在此基礎上的優化很難搞...
評分
☆☆☆☆☆
剛開始詞法分析,語法分析,節的數據生成看的還可以,但是到後麵的語義分析和gencode部分太抽象,不得已把代碼down下來,一遍一遍跑自己寫的test,跟蹤函數... 花瞭兩個月時間一天一兩個小時,終於把所有代碼都理解瞭。收獲很大,但是由於其沒有中間代碼,這樣的話導緻在此基礎上的優化很難搞...
評分
☆☆☆☆☆
感謝它拯救瞭我的解釋器實踐課。 如果有配套講解視頻更佳啊。
評分
☆☆☆☆☆
雖然我自己也做過簡單的編譯器,可是看瞭作者的書感覺收獲還是很大。作者是個用心在寫書的人,真正想入門編譯器,這本書可能比那些深奧難懂的編譯原理更加適閤吧。而且這是中國人自己寫的書,確實讀起來我覺得比讀外國寫的書更加具有親和力。也更適閤中國人的閱讀習慣。(很少寫這麼多的書評,但是我覺得在現在大傢都認為學編譯原理就是隻有那幾本龍書,虎書,鯨書,結果一看就被弄迷糊瞭。那幾本固然經典,天賦極佳的可以隻看那幾本書,可是我覺得對於大部分人,這種實戰性的書籍更具意義吧。)
自己動手寫編譯器、鏈接器 在線電子書 著者簡介
自己動手寫編譯器、鏈接器 在線電子書 著者簡介
第1章 引言 1
1.1 HelloWorld編譯過程分析 1
1.1.1 HelloWorld程序源文件 1
1.1.2 詞法分析 2
1.1.3 語法分析 3
1.1.4 語義分析 3
1.1.5 鏈接器 4
1.2 SCC編譯器簡介 7
1.2.1 SCC編譯器架構 7
1.2.2 SCC編譯器開發環境 7
1.2.3 SCC編譯器運行環境 8
第2章 文法知識 10
2.1 語言概述 10
2.2 形式語言 11
2.2.1 字母錶和符號串 11
2.2.2 文法與語言的形式定義 12
2.2.3 文法與語言的類型 13
2.2.4 程序設計語言描述工具 15
2.3 詞法分析方法 16
2.3.1 詞法定義例舉 17
2.3.2 狀態轉換圖 17
2.3.3 詞法分析程序流程圖 17
2.4 語法分析方法 18
2.4.1 LL分析器 18
2.4.2 LL(k)文法 19
2.4.3 LL(1)文法 19
2.4.4 遞歸子程序法 21
2.4.5 文法的等價變換 24
第3章 SC語言定義 26
3.1 SC語言的藍本選擇 26
3.1.1 K&R C 26
3.1.2 C89 26
3.1.3 C99 27
3.2 SC語言對C89簡化原則 27
3.3 SC語言的字符集 27
3.3.1 基本字符集 28
3.3.2 擴展字符集 28
3.4 SC語言詞法定義 29
3.4.1 關鍵字 29
3.4.2 標識符 30
3.4.3 整數常量 31
3.4.4 字符常量 31
3.4.5 字符串常量 32
3.4.6 運算符及分隔符 32
3.4.7 注釋 33
3.5 SC語言語法定義 33
3.5.1 外部定義 33
3.5.2 語句 35
3.5.3 錶達式 39
3.6 SC語言與C語言功能對比 46
3.6.1 關鍵字 46
3.6.2 數據類型 46
3.6.3 存儲類型 47
3.6.4 常量 47
3.6.5 變量 47
3.6.6 函數 48
3.6.7 語句 48
3.6.8 錶達式 50
第4章 SC語言詞法分析 52
4.1 詞法分析任務的官方說法 52
4.2 單詞編碼 53
4.3 詞法分析用到的數據結構 55
4.3.1 動態字符串 56
4.3.2 動態數組 58
4.3.3 哈希錶 61
4.3.4 單詞錶 62
4.4 錯誤處理,未雨綢繆 67
4.5 詞法分析過程 72
4.5.1 詞法分析主程序 72
4.5.2 預處理 76
4.5.3 解析標識符 79
4.5.4 解析整數 80
4.5.5 解析字符串 80
4.5.6 詞法分析流程圖 82
4.6 詞法著色 84
4.7 控製程序 85
4.8 詞法分析成果展示 86
第5章 SC語言語法分析 87
5.1 外部定義 87
5.1.1 翻譯單元 87
5.1.2 外部聲明 88
5.1.3 類型區分符 90
5.1.4 結構區分符 92
5.1.5 函數調用約定 95
5.1.6 結構成員對齊 95
5.1.7 聲明符 96
5.1.8 初值符 100
5.2 語句 101
5.2.1 復閤語句 102
5.2.2 錶達式語句 103
5.2.3 選擇語句 104
5.2.4 循環語句 104
5.2.5 跳轉語句 105
5.3 錶達式 107
5.3.1 賦值錶達式 108
5.3.2 相等類錶達式 109
5.3.3 關係錶達式 109
5.3.4 加減類錶達式 110
5.3.5 乘除類錶達式 111
5.3.6 一元錶達式 112
5.3.7 後綴錶達式 113
5.3.8 初值錶達式 114
5.4 語法縮進 116
5.4.1 用到的全局變量及枚舉 116
5.4.2 語法縮進程序 117
5.5 總控程序 118
5.6 成果展示 119
第6章 符號錶 120
6.1 符號錶簡介 121
6.1.1 收集符號屬性 121
6.1.2 語義的閤法性檢查 122
6.2 符號錶用到的主要數據結構 123
6.2.1 棧結構 123
6.2.2 符號錶結構 127
6.2.3 數據類型結構 132
6.2.4 存儲類型 133
6.3 符號錶的構造過程 134
6.3.1 外部聲明 134
6.3.2 類型區分符 137
6.3.3 結構區分符 138
6.3.4 聲明符 144
6.3.5 變量初始化 149
6.3.6 復閤語句 150
6.3.7 sizeof錶達式 150
6.3.8 初等錶達式 152
6.4 控製程序 153
6.5 成果展示 155
第7章 生成COFF目標文件 157
7.1 COFF文件結構 157
7.1.1 基本概念 157
7.1.2 總體結構 158
7.1.3 COFF文件頭 158
7.1.4 節頭錶 161
7.1.5 代碼節內容 168
7.1.6 數據節與導入節內容 168
7.1.7 COFF符號錶 169
7.1.8 COFF字符串錶 173
7.1.9 COFF重定位信息 173
7.2 生成COFF目標文件 175
7.2.1 生成節錶 176
7.2.2 生成符號錶 178
7.2.3 生成重定位信息 182
7.2.4 生成目標文件 183
7.3 成果展示 185
第8章 x86機器語言 187
8.1 x86機器語言簡介 187
8.2 通用指令格式 188
8.2.1 指令前綴 188
8.2.2 操作碼 190
8.2.3 ModR/M字節 190
8.2.4 SIB字節 191
8.2.5 偏移量與立即數 193
8.3 x86寄存器 193
8.3.1 數據寄存器 193
8.3.2 變址寄存器 193
8.3.3 指針寄存器 194
8.3.4 段寄存器 194
8.3.5 指令指針寄存器 194
8.3.6 標誌寄存器 195
8.4 指令參考 196
8.4.1 符號說明 196
8.4.2 數據傳送指令 198
8.4.3 算術運算指令 200
8.4.4 邏輯運算指令 203
8.4.5 控製轉移指令 205
8.4.6 串操作指令 208
8.4.7 處理器控製指令 208
8.5 生成x86機器語言 208
8.5.1 操作數棧 209
8.5.2 生成通用指令 210
8.5.3 生成數據傳送指令 213
8.5.4 生成算術與邏輯運算指令 217
8.5.5 生成控製轉移指令 221
8.5.6 寄存器使用 224
8.5.7 本章用到的全局變量 227
8.6 成果展示 227
第9章 SCC語義分析 229
9.1 外部定義 229
9.1.1 聲明與函數定義 229
9.1.2 初值符 232
9.1.3 函數體 234
9.2 語句 237
9.2.1 錶達式語句 237
9.2.2 選擇語句 238
9.2.3 循環語句 239
9.2.4 跳轉語句 241
9.3 錶達式 244
9.3.1 賦值錶達式 244
9.3.2 相等類錶達式 245
9.3.3 關係錶達式 246
9.3.4 加減類錶達 248
9.3.5 乘除類錶達式 249
9.3.6 一元錶達式 250
9.3.7 後綴錶達式 253
9.3.8 初值錶達式 257
9.4 成果展示 259
第10章 鏈接器 261
10.1 鏈接方式與庫文件 261
10.2 PE文件格式 263
10.2.1 總體結構 263
10.2.2 DOS部分 264
10.2.3 NT頭 265
10.2.4 節頭錶 272
10.2.5 代碼節 272
10.2.6 數據節 274
10.2.7 導入節 274
10.3 鏈接器代碼實現 278
10.3.1 生成PE文件頭 278
10.3.2 加載目標文件 281
10.3.3 加載引入庫文件 282
10.3.4 解析外部符號 285
10.3.5 計算節區的RVA地址 288
10.3.6 重定位符號地址 291
10.3.7 修正需要重定位的地址 292
10.3.8 寫PE文件 293
10.3.9 生成EXE文件 295
10.4 SCC編譯器、鏈接器總控程序 297
10.5 成果展示 301
10.6 全書代碼架構 302
第11章 SC語言程序開發 304
11.1 SC語言程序開發流程 304
11.2 SCC編譯器測試程序 304
11.2.1 錶達式測試 304
11.2.2 語句測試 308
11.2.3 結構體測試 310
11.2.4 函數參數傳遞測試 312
11.2.5 字符串測試 314
11.2.6 全局變量測試 315
11.3 語言舉例 316
11.3.1 可接收命令行參數的控製颱程序 316
11.3.2 可接收命令行參數的Win32應用程序 317
11.3.3 HelloWindows窗口程序 318
11.3.4 文件復製程序 323
11.3.5 九九乘法錶 325
11.3.6 打印菱形 326
11.3.7 屏幕捕捉程序 328
參考文獻 336
附錄A SC語言文法定義中英文對照錶 337
· · · · · · (
收起)
自己動手寫編譯器、鏈接器 在線電子書 pdf 下載 txt下載 epub 下載 mobi 在線電子書下載
自己動手寫編譯器、鏈接器 在線電子書 圖書描述
《自己動手寫編譯器、鏈接器》講述瞭一個真實編譯器的開發過程,源語言是以C語言為藍本,進行適當簡化定義的一門新語言,稱之為SC語言(簡化的C語言),目標語言是大傢熟悉的Intelx86機器語言。在本書中,讀者將看到從SC語言定義,到SCC編譯器開發的完整過程。本書介紹的SCC編譯器,沒有藉助Lex與Yacc這些編譯器自動生成工具,純手工編寫而成,更便於學習和理解。為瞭生成可以直接運行EXE文件,本書還實現瞭一個鏈接器。讀完本書讀者將知道一門全新的語言如何定義,一個真實的編譯器、鏈接器如何編寫。
本書適閤各類程序員、程序開發愛好者閱讀,也可作為高等院校編譯原理課程的實踐教材。
鄭重聲明:本書源代碼作者已申請版權,僅供讀者用於學習研究之目的。未經作者允許,嚴禁任何組織與個人將其在網絡上傳播或用於商業用途。對於侵權行為,作者保留提起法律訴訟的權利。源代碼相關問題,請與作者聯係。
自己動手寫編譯器、鏈接器 在線電子書 下載 mobi epub pdf txt 在線電子書下載
自己動手寫編譯器、鏈接器 在線電子書 讀後感
評分
☆☆☆☆☆
評分
☆☆☆☆☆
学了编译原理和形式语言与自动机、用过各种解释器、编译器...你可曾有兴趣了解下他们都是如何实现的?当然/虽然,一个成熟的编译器前端通常不会采用如此简单的递归子程序法设计,但是,一个完整的编译器、链接器可以这样地构建。本书可以很好地满足很多读者对于编译器、连接器...
評分
☆☆☆☆☆
学了编译原理和形式语言与自动机、用过各种解释器、编译器...你可曾有兴趣了解下他们都是如何实现的?当然/虽然,一个成熟的编译器前端通常不会采用如此简单的递归子程序法设计,但是,一个完整的编译器、链接器可以这样地构建。本书可以很好地满足很多读者对于编译器、连接器...
評分
☆☆☆☆☆
书中有几个函数没有给出具体的实现,需要自行填补,部分指针没有初始化造成编译程序的崩溃,但是总体上通俗易懂,适合入门自行学习。在WINDOWS下编写可使用较新的编译器,由于代码书写在vc6.0环境下,在改写过程中能比较好的发现问题.
評分
☆☆☆☆☆
類似圖書 點擊查看全場最低價
自己動手寫編譯器、鏈接器 在線電子書 pdf 下載 txt下載 epub 下載 mobi 下載 2025