商品详情
目录
第1章引论1
1.1什么是编译程序1
1.2编译过程和编译程序的结构2
1.2.1编译过程概述2
1.2.2编译程序的结构5
1.2.3编译阶段的组合6
1.3解释程序和一些软件工具7
1.3.1解释程序7
1.3.2处理源程序的软件工具8
1.4PL/0语言编译系统10
1.4.1PL/0语言编译系统构成11
1.4.2PL/0语言11
1.4.3类Pcode语言14
1.4.4PL/0编译程序15
1.4.5PL/0语言编译系统的驱动代码16
练习18
第2章文法和语言19
2.1文法的直观概念19
2.2符号和符号串20
2.3文法和语言的形式定义21
2.4文法的类型25
2.5上下文无关文法及其语法树26
2.6句型的分析29
2.6.1自上而下的分析方法30
2.6.2自下而上的分析方法30
2.6.3句型分析的有关问题31
2.7有关文法实际应用的一些说明32
2.7.1有关文法的实用限制32
2.7.2上下文无关文法中的ε规则33
练习33
第3章词法分析37
3.1词法分析程序的设计37
3.1.1词法分析程序和语法分析程序的接口方式37
3.1.2词法分析程序的输出37
3.1.3将词法分析工作分离的考虑38
3.1.4词法分析程序中如何识别单词39
3.2PL/0编译程序中词法分析程序的设计和实现39
3.3单词的形式化描述工具44
3.3.1正规文法44
3.3.2正规式45
3.3.3正规文法和正规式的等价性46
3.4有穷自动机47
3.4.1确定的有穷自动机(DF...
图书简介
本书介绍程序设计语言编译程序构造的一般原理、基本设计方法和主要实现技术,主要内容包括文法、自动机和语言的基础知识,词法分析,语法分析,语法制导的语义计算,语义分析,中间代码生成,运行时存储组织,代码优化和目标代码生成。
除了基本设计原理外,书中还包含两个小型编译程序的设计实例,可选作课程设计的素材。一个是PL/0语言编译程序,其设计和实现框架贯穿于本书相关章节中;另一个是简单面向对象语言Decaf的编译程序。本书最后还介绍了业界广泛使用的开源编译器GCC及和它紧密相关的Binutils工具链,通过一系列程序实例说明这些工具的作用和基本用法。
本书可作为高等院校计算机科学与技术相关专业的本科生教材,也可作为相关教师、研究生或工程技术人员的参考书。
- 清华大学出版社旗舰店 (微信公众号认证)
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...