图书介绍

C编译器剖析pdf电子书版本下载

C编译器剖析
  • 邹昌伟编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302426103
  • 出版时间:2016
  • 标注页数:392页
  • 文件大小:51MB
  • 文件页数:404页
  • 主题词:C语言-编译器-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

C编译器剖析PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 基础知识 1

1.1 语言、文法与递归 1

1.2 一个较复杂的文法 4

1.3 由文法到分析器 7

1.3.1 表达式 7

1.3.2 声明 15

1.3.3 语句 21

1.4 UCC编译器预览 28

1.4.1 UCC的使用 28

1.4.2 UCC驱动器 31

1.5 结合C语言来学汇编 35

1.5.1 汇编语言简介 35

1.5.2 整数运算 42

1.5.3 浮点数的算术运算 48

1.5.4 浮点数之间的比较操作 51

1.5.5 指针、数组和结构体 53

1.6 C语言的变量名、数组名和函数名 55

1.7 C语言的变参函数 58

1.8 本章习题 65

第2章 ucc编译器的基本模块 66

2.1 从Makefile走起 66

2.2 词法分析 69

2.3 UCC编译器的内存管理 74

2.4 C语言的类型系统 81

2.5 UCC编译器的符号表管理 91

2.6 本章习题 100

第3章 语法分析 101

3.1 C语言的表达式 101

3.1.1 条件表达式和二元表达式 101

3.1.2 一元表达式、后缀表达式和基本表达式 111

3.2 C语言的语句 122

3.3 C语言的外部声明 131

3.3.1 声明和函数定义 131

3.3.2 与声明有关的几个非终结符 142

3.3.3 声明说明符和声明符 147

3.4 本章习题 166

第4章 语义检查 167

4.1 语义检查简介 167

4.2 表达式的语义检查 168

4.2.1 表达式的语义检查简介 168

4.2.2 数组索引的语义检查 173

4.2.3 基本表达式的语义检查 179

4.2.4 函数调用的语义检查 184

4.2.5 成员选择运算符的语义检查 198

4.2.6 相容类型 201

4.2.7 一元表达式的语义检查 209

4.2.8 二元表达式、赋值表达式和条件表达式的语义检查 216

4.3 语句的语义检查 226

4.4 声明的语义检查 231

4.4.1 类型结构的构建 231

4.4.2 结构体的类型结构 245

4.4.3 结构体和数组的初始化 255

4.4.4 内部连接和外部连接 267

4.4.5 外部声明的语义检查 270

4.5 本章习题 274

第5章 中间代码生成及优化 276

5.1 中间代码生成简介 276

5.2 表达式的翻译 283

5.2.1 布尔表达式的翻译 283

5.2.2 公共子表达式 293

5.2.3 通过“偏移”访问数组元素和结构体成员 301

5.2.4 后缀表达式的翻译 305

5.2.5 赋值表达式的翻译 310

5.2.6 一元表达式及其他表达式的翻译 317

5.3 语句的翻译 319

5.3.1 if语句和复合语句的翻译 319

5.3.2 switch语句的翻译 324

5.4 UCC编译器的优化 334

5.4.1 删除无用的临时变量和优化跳转目标 334

5.4.2 基本块的合并 339

5.5 本章习题 342

第6章 汇编代码生成 344

6.1 汇编代码生成简介 344

6.2 寄存器的管理 351

6.3 中间代码的翻译 358

6.3.1 由中间代码产生汇编指令的主要流程 358

6.3.2 为算术运算产生汇编代码 367

6.3.3 为跳转指令产生汇编代码 371

6.3.4 为函数调用与返回产生汇编代码 375

6.3.5 为类型转换产生汇编代码 382

6.3.6 为取地址产生汇编指令 387

6.4 本章习题 390

参考文献 391

后记 392

精品推荐