可變目標C編譯器

可變目標C編譯器 pdf epub mobi txt 電子書 下載2025

出版者:機械工業齣版社
作者:Christopher W. Fraser
出品人:
頁數:423
译者:王挺
出版時間:2016-11
價格:79.00元
裝幀:平裝
isbn號碼:9787111552581
叢書系列:計算機科學叢書
圖書標籤:
  • 編譯原理
  • 編譯器
  • 編程
  • 計算機
  • c
  • PLT
  • 編譯器實現
  • 工具鏈
  • 編譯器
  • Objective-C
  • 可變性
  • 編譯原理
  • 程序語言
  • 代碼生成
  • 優化
  • 動態編譯
  • 軟件工程
  • 計算機科學
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

本書係統地介紹瞭可變目標ANSI C編譯器lcc的設計方法和實現技術。lcc是一個實用的編譯器,能夠為不同的目標機器(如MIPS R3000、SPARC、Intel 386及其後續産品)生成代碼。本書結閤lcc的具體實現,詳細講述瞭存儲管理、符號錶、詞法分析、語法分析、中間代碼生成、優化、目標代碼産生等編譯程序的各個部分。

本書特色鮮明,實用性強,適閤作為高等院校計算機專業編譯原理課程的教材或參考書,對從事編譯相關工作的技術人員也有很好的參考價值。

著者簡介

本書的兩位作者都具有深厚的教學和研究背景。Christopher W.Fraser從1975年起開媽研究編譯技術,尤其對於從緊縮規範自動産生代碼生成器這一技術有深入的研究,在該領域發錶瞭多篇論文。他提齣瞭可變目標的窺孔優化方法,該方法被廣為流行的C編譯器——GCC所采納。從1997年到1986年,Fraser在亞利桑那大學從事計算機科學的教學工作。1986年以後,他在AT&T貝爾實驗室主持計算技術的研究工作。David R.Hanson是普林斯頓大學計算機科學教授,具有20多年的程序語言的研究經驗,主持瞭與貝爾實驗到的閤作研究,是Lcc的開發者之一。

圖書目錄

齣版者的話
譯者序
前言
第1章 引論 1
1.1 文本程序 1
1.2 如何使用本書 2
1.3 概述 3
1.4 設計 7
1.5 公共聲明 11
1.6 語法規範 13
1.7 錯誤 14
深入閱讀 15
第2章 存儲管理 16
2.1 內存管理接口 16
2.2 分配區的錶示 17
2.3 空間分配 18
2.4 空間釋放 20
2.5 字符串 20
深入閱讀 23
練習 23
第3章 符號管理 26
3.1 符號的錶示 27
3.2 符號錶的錶示 29
3.3 作用域的改變 32
3.4 查找和建立標識符 32
3.5 標號 33
3.6 常量 34
3.7 産生的變量 37
深入閱讀 38
練習 38
第4章 類型 40
4.1 類型錶示 40
4.2 類型管理 42
4.3 類型斷言 45
4.4 類型構造器 46
4.5 函數類型 48
4.6 結構和枚舉類型 49
4.7 類型檢查函數 52
4.8 類型映射 56
深入閱讀 56
練習 57
第5章 代碼生成接口 59
5.1 類型度量 59
5.2 接口記錄 60
5.3 符號 60
5.4 類型 61
5.5 dag操作 61
5.6 接口標誌 65
5.7 初始化 67
5.8 定義 67
5.9 常量 69
5.10 函數 70
5.11 接口綁定 72
5.12 上行調用 73
深入閱讀 75
練習 75
第6章 詞法分析器 77
6.1 輸入 77
6.2 單詞的識彆 81
6.3 關鍵字的識彆 85
6.4 標識符的識彆 86
6.5 數字的識彆 87
6.6 字符常量和字符串的識彆 92
深入閱讀 95
練習 95
第7章 語法分析 97
7.1 語言和語法 97
7.2 二義性和分析樹 98
7.3 自上而下的語法分析 100
7.4 FIRST和FOLLOW集閤 102
7.5 編寫分析函數 104
7.6 處理語法錯誤 106
深入閱讀 110
練習 111
第8章 錶達式 112
8.1 錶達式的錶示 112
8.2 錶達式分析 115
8.3 C語言錶達式的分析 117
8.4 賦值錶達式 119
8.5 條件錶達式 121
8.6 二元錶達式 122
8.7 一元錶達式和後綴錶達式 124
8.8 基本錶達式 127
深入閱讀 130
練習 130
第9章 錶達式語義 132
9.1 轉換 132
9.2 一元操作符和後綴操作符 136
9.3 函數調用 141
9.4 二元操作符 147
9.5 賦值操作 150
9.6 條件操作 154
9.7 常量摺疊 156
深入閱讀 165
練習 165
第10章 語句 167
10.1 代碼的錶示 167
10.2 執行點 170
10.3 語句的識彆 171
10.4 if語句 173
10.5 標號和goto語句 174
10.6 循環 176
10.7 switch語句 178
10.8 return語句 188
10.9 管理標號和跳轉指令 191
深入閱讀 194
練習 194
第11章 聲明 196
11.1 轉換單元 196
11.2 聲明 197
11.3 聲明符 206
11.4 函數聲明符 210
11.5 結構說明符 215
11.6 函數定義 222
11.7 復閤語句 229
11.8 結束處理 236
11.9 主程序 238
深入閱讀 240
練習 241
第12章 中間代碼的生成 243
12.1 消除公共子錶達式 244
12.2 構建節點 248
12.3 控製流 250
12.4 賦值語句 256
12.5 函數調用 259
12.6 強製計算順序 261
12.7 驅動代碼生成 263
12.8 刪除多次引用的節點 267
深入閱讀 272
練習 273
第13章 構造代碼生成器 275
13.1 代碼生成器的組織 276
13.2 接口擴展 277
13.3 上行調用 279
13.4 節點擴展 280
13.5 符號擴展 282
13.6 幀的布局 284
13.7 生成塊復製的代碼 287
13.8 初始化 289
深入閱讀 290
練習 290
第14章 選擇和發送指令 291
14.1 規範 292
14.2 標記樹 294
14.3 化簡樹 295
14.4 代價函數 302
14.5 調試 303
14.6 發送器 304
14.7 寄存器定位 309
14.8 指令選擇的協調 313
14.9 共享規則 314
14.10 編寫規範 315
深入閱讀 316
練習 316
第15章 寄存器分配 318
15.1 組織結構 318
15.2 寄存器狀態跟蹤 319
15.3 寄存器分配 322
15.4 寄存器溢齣 327
深入閱讀 334
練習 334
第16章 MIPS R3000代碼的生成 335
16.1 寄存器 336
16.2 指令的選取 339
16.3 函數的實現 349
16.4 數據的定義 355
16.5 塊的復製 359
深入閱讀 360
練習 360
第17章 SPARC代碼的生成 362
17.1 寄存器 363
17.2 指令的選取 366
17.3 函數的實現 378
17.4 數據的定義 384
17.5 塊的復製 386
深入閱讀 387
練習 387
第18章 X86代碼的生成 389
18.1 寄存器 390
18.2 指令的選取 394
18.3 函數的實現 407
18.4 數據的定義 409
深入閱讀 412
練習 412
第19章 迴顧 413
19.1 數據結構 413
19.2 接口 414
19.3 句法和語義分析 415
19.4 代碼生成和優化 416
19.5 測試和驗證 416
深入閱讀 417
參考文獻 419
· · · · · · (收起)

讀後感

評分

評分

評分

評分

評分

用戶評價

评分

评分

评分

评分

评分

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有