中文名: 编译器工程原名: Engineering a Compiler
作者: Cooper
Torczon
Safonov
Hohenauer
Leupers
Sikkel图书
分类: 软件
资源格式: PDF
版本: 第二版
出版社: Elsevier
书号: 978-0-12-088478-0
发行时间: 2011年
地区: 美国
语言: 英文
简介:
内容简介:
本书旨在介绍编译器构造法中的艺术和科学。用大量素材向读者展示现实权衡的存在,展示这些选择的影响可能是微妙且深远的。省略由于商业、语言和编译器技术以及可用工具的变迁而变得不太重要的技术、c语言对优化和代码生成提供更深层次的处理。本书内容分为四部分。前端部分介绍扫描、语法分析、上下文相关分析的内容;基础结构部分阐述中间表示、过程抽象、代码形态为主线的知识;优化部分阐述构建编译器的中间部分——优化器所出现的问题;代码生成部分着眼于代码生成中的三个主要问题。.
本书内容翔实,文笔流畅,适合作为高等院校计算机专业本科生和研究生编译课程的教材和参考书。..
本书深入探索编译器设计领域,涉及这个领域中的各种问题及解决方案。通过展示问题的参数和这些参数对编译器设计的影响.阐述问题酌深度和可能解决方案的广度。本书介绍了实际设计中该如何权衡,以及那些微妙而高深莫测的选择对编译器的影响。
本书特点:
●集中研究编译器的后端——反映了近十几年来研究和发展的成果。使用扫描和分析的成熟理论引入在优化和代码生成中起关键作用的概念。鲁介绍数据流分析。ssa 形式和标量优化等优化方法。
●传授代码生成中的现代方法:指令筛选。指令调度和寄存器分配。
●给出程序设计语言中最能解释这些概念的实例。
目录:
前言
第1章 编译总览
1.1 概述
1.2 为什么研究编译器构造法
1.3 编译的基本原则
1.4 编译器的结构
1.5 翻译综述
1.5.1 理解输入
1.5.2 创建和维护运行时环境
1.5.3 改进代码
1.5.4 生成输出程序
1.6 编译器应有的性质
1.7 概括和展望
本章注释
第2章 扫描
2.1 概述
.2.2.识别字
2.2.1 识别器的形式
2.2.2 识别更复杂的字
2.2.3 扫描器的自动构建
2.3 正则表达式
2.3.1 正则表达式的定义
2.3.2 例子
2.3.3 re的性质
2.4 从正则表达式到扫描器以及从扫描器到正则表达式
2.4.1 非确定性有穷自动机
2.4.2 正则表达式到nfa:thompson构造法
2.4.3 nfa到dfa:子集构造法
2.4.4 dfa到最小dfa:hopcroft算法
2.4.5 dfa到正则表达式
2.4.6 将dfa作为识别器
2.5 实现扫描器
2.5.1 表驱动扫描器
2.5.2 直接编码扫描器
2.5.3 处理关键字
2.5.4 描述动作
2.6 高级话题
2.7 概括和展望
本章注释
第3章 语法分析
3.1 概述
3.2 表示语法
3.2.1 上下文无关文法
3.2.2 构造句子
3.2.3 使用结构描述优先权
3.2.4 发现特定派生
3.2.5 上下文无关文法与正则表达式的对比
3.3 自顶向下分析
3.3.1 例子
3.3.2 自顶向下分析的复杂因素
3.3.3 消除左递归
3.3.4 消除回溯
3.3.5 自顶向下递归下降分析器
3.4 自底向上分析
3.4.1 移入归约分析
3.4.2 发现句柄
3.4.3 lr(1)分析器
3.5 构建lr(1)表格
3.5.1 lr(1)项目
3.5.2 构造规范集合
3.5.3 填充表格
3.5.4 表构造法的出错
3.6 实践中的问题
3.6.1 错误恢复
3.6.2 一元操作符
3.6.3 处理上下文相关歧义性
3.6.4 左递归与右递归
3.7 高级话题
3.7.1 优化文法
3.7.2 减小lr(1)表格的大小
3.8 概括和展望
本章注释
第4章 上下文相关分析

截图:



欢迎投稿 职场/创业方向. 邮箱wangfzcom(AT)163.com:王夫子社区 » 编译器工程 Cooper 英文 PDF版 [8.3M] PDF 免费下载

点评 0

评论前必须登录!

登陆 注册