本书系统地介绍了可变目标ANSIC编译器1cc的设计方法和实现技术。1cc是一个实用的编译器,能够不同的目标机器生成代码。本书结合1cc的具体实现,详细讲术了存储管理、符号表、词法分析、语法分析、中间代码生成、优化、目标代码产生等编译程序的各个部分。全书共分19章,在各章之后均附有练习。
与其他介绍编译技术的教材相比,本书特色鲜明,实用性强,适合作为高等院校计算机专业的编译原理课程的教材或参考书,对从事编译相关工作的技术人员也有很好的参考价值。
第1章 引论
1.1 文本程序
1.2 如何使用本书
1.3 概述
1.4 设计
1.5 公共声明
1.6 语法规范
1.7 错误
深入阅读
第2章 存储管理
2.1 内存管理接口
2.2 分配区的表示
2.3 空间分配
2.4 空间释放
2.5 字符串
深入阅读
练习
第3章 符号管理
3.1 符号的表示
3.2 符号表的表示
3.3 作用域的改变
3.4 查找和建立标识符
3.5 标号
3.6 常量
3.7 产生的变量
深入阅读
练习
第4章 类型
4.1 类型表示
4.2 类型管理
4.3 类型断言
4.4 类型构造器
4.5 函数类型
4.6 结构和枚举类型
4.7 类型检查函数
4.8 类型映射
深入阅读
练习
第5章 代码生成接口
5.1 类型度量
5.2 接口记录
5.3 符号
5.4 类型
5.5 dag操作
5.6 接口标志
5.7 初始化
5.8 定义
5.9 常量
5.10 函数
5.11 接口绑定
5.12 上行调用
深入阅读
练习
第6章 词法分析器
6.1 输入
6.2 单词的识别
6.3 关键字的识别
6.4 标识符的识别
6.5 数字的识别
6.6 字符常量和字符串的识别
深入阅读
练习
第7章 语法分析
7.1 语言和语法
7.2 二义性和分析树
7.3 自上而下的语法分析
7.4 FIRST和FOLLOW集合
7.5 编写分析函数
7.6 处理语法错误
深入阅读
练习
第8章 表达式
8.1 表达式的表示
8.2 表达式分析
8.3 C语言表达式的分析
8.4 赋值表达式
8.5 条件表达式
8.6 二元表达式
8.7 一元表达式和后缀表达式
8.8 基本表达式
深入阅读
练习
第9章 表达式语义
9.1 转换
9.2 一元操作符和后缀操作符
9.3 函数调用
9.4 二元操作符
9.5 赋值操作
9.6 条件操作
9.7 常量折叠
深入阅读
练习
第10章 语句
10.1 代码的表示
10.2 执行点
10.3 语句的识别
10.4 if 语句
10.5 标号和goto语句
10.6 循环
10.7 switch语句
10.8 返回语句
10.9 管理标号和跳转指令
深入阅读
练习
第11章 声明
11.1 转换单元
11.2 声明
11.3 声明符
11.4 函数声明符
11.5 结构说明符
11.6 函数定义
11.7 复合语句
11.8 结束处理
11.9 主程序
深入阅读
练习
第12章 中间代码的生成
12.1 消除公共子表达式
12.2 构建节点
12.3 控制流
12.4 赋值语句
12.5 函数调用
12.6 强制计算顺序
12.7 驱动代码生成
12.8 删除多次引用的节点
深入阅读
练习
第13章 构造代码生成器
13.1 代码生成器的组织
13.2 接口扩展
13.3 上行调用
13.4 节点扩展
13.5 符号扩展
13.6 帧的布局
13.7 生成块复制的代码
13.8 初始化
深入阅读
练习
第14章 选择和发送指令
14.1 规范
14.2 标记树
14.3 化简树
14.4 代价函数
14.5 调试
14.6 发送器
14.7 寄存器定位
14.8 指令选择的协调
14.9 共享规则
14.10 编写规范
深入阅读
练习
第15章 寄存器分配
15.1 组织结构
15.2 寄存器状态跟踪
15.3 寄存器分配
15.4 寄存器溢出
深入阅读
练习
第16章 MIPS R3000代码的生成
16.1 寄存器
16.2 指令的选取
16.3 函数的实现
16.4 数据的定义
16.5 块的复制
深入阅读
练习
第17章 SPARC代码的生成
17.1 寄存器
17.2 指令的选取
17.3 函数的实现
17.4 数据的定义
17.5 块的复制
深入阅读
练习
第18章 X86代码的生成
18.1 寄存器
18.2 指令的选取
18.3 函数的实现
18.4 数据的定义
深入阅读
练习
第19章 回顾
19.1 数据结构
19.2 接口
19.3 句法和语义分析
19.4 代码生成和优化
19.5 测试和验证
深入阅读
参考文献
《ACM图灵奖:计算机发展史的缩影(1966-2006)(第3版)》介绍了51位ACM图灵奖获得者的工作和事迹。通过对20世纪下半叶及21世纪初有代
《你是锦瑟 我为流年》内容简介:锲而不舍地流浪,乐此不疲地拾荒。2019全新升级,畅销书作者白落梅温情讲述三毛传奇一生! 她是撒
《巴黎卢浮宫(伟大的博物馆·少年版)》内容简介:“伟大的博物馆·少年版”系列图书以博物馆为依托,在内容编写上融合了博
《做真正的我》内容简介:本书通过一些真实事例的验证,向大家阐述了其实每一个人都是“天生我才必有用”,不要妄自菲薄,轻看自己
《普京政治经济学》内容简介:20世纪90年代,休克疗法将处于经济社会转型中的俄罗斯推到崩溃的边缘。进入21世纪后,在普京“强国富
本书有两条线索,一条线索是以Linux平台为载体全面深入地介绍C语言的语法和程序的工作原理,另一条线索是介绍程序设计的基本思想
Eagertodevelopembeddedsystems?Thesesystemsdonttolerateinefficiency,soyoumayneeda...
《小学主题式综合活动课程案例选编》内容简介:本书是上海市开展小学主题式综合活动课程研究和实施工作以来汇总的首个学校案例集。
《内容电商》内容简介:本书全面介绍了内容电商及内容电商各模块的具体内容。全书共分7章,第1章重点介绍内容电商的相关概念,其中
C语言程序设计---现代方法第二版 本书特色 《C语言程序设计:现代方法(第2版)》是C语言的经典之作,被誉为“近10年来*好的一部C语言著作”。书中讨论了标准...
《增强现实:技术、应用和人体因素》内容简介:本书共分四部分,23章。第一部分阐述了增强和沉浸式显示器以及它们的历史,虚拟空间
自从这本经典图书的第一版出版以来,网络的应用呈爆炸之势,电子商务已经成了我们生活和工作的一部分。与此同时,对我们安全和隐
《科学的故事·起源篇》内容简介:“科学”是一个翻译过来的名字,英文Science。中国早期是把它翻译成“格致学”,取“格物致知”之
MSC Adams多体动力学仿真基础与实例解析-(赠1DVD) 本书特色 《mscadams多体动力学仿真基础与实例解析(附光盘)/万水msc技术丛书...
Thisbookoffersastep-by-stepguidetotheexperimentalplanningprocessandtheensuingana...
《玉山丹池》内容简介:石听泉、卜正民、王立群、梅新林、徐永明等海内外学者联袂推荐 英语世界首部综述中国传统游记文学的专著 展
《自己动手制作软体机器人》内容简介:软体机器人技术是一个新兴的领域,它以新的方式接近机器人,使机器人能够在非结构化或不稳定
《猫派》内容简介:◆十二则刊载于《纽约客》杂志的“现象级”短篇小说 ◆网络上超三百万人次转发,HBO即将改编影视 ◆人的情感,真
ExcelVBA范例应用大全1001例(含光盘) 本书特色 Excel 2003与Excel 2007软件完全适用书中详解400个实例,热点应用全面覆盖代码注释...
本书既系统全面又突出重点,作者从C++基础知识讲起,始终着眼于C++语言的编程实践,提供了大量实践示例和解决方案,包括如何更好