机械工业出版社旗舰店店铺主页二维码
机械工业出版社旗舰店 微信认证
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

编译与反编译技术

47.20
运费: ¥ 0.00-15.00
库存: 44 件
编译与反编译技术 商品图0
编译与反编译技术 商品缩略图0

商品详情

商品介绍

  • 商品信息

  • 出版社: 机械工业出版社

  • 商品名称:编译与反编译技术

  • 作者:庞建民 陶红伟 刘晓楠 岳峰

  • 市场价:59.0

  • ISBN号:9787111534129

  • 版次:1-1

  • 出版日期:2016-04

  • 页数:393

  • 字数:542


内容简介

本书首先从正向角度介绍编译系统的一般原理和基本实现技术,主要内容有词法分析、语法分析、语义分析与处理、符号表、运行时存储组织、优化、目标代码生成和多样化编译等;然后从反向角度介绍反编译的相关原理和技术,包括反编译及其关键要素、反编译器的整体框架、反编译中的指令解码和语义描述与映射、反编译中的恢复技术、编译优化的反向处理、反编译与信息安全等。
本书可作为计算机及信息安全相关专业高年级本科生的教科书或教学参考书,也可供计算机相关专业研究生和从事编程或者软件逆向分析工作的工程技术人员参考。

目录

目录
前言
教学建议
第1章 引论 1
1.1 编译器与解释器 1
1.2 编译过程 2
1.3 编译器结构 2
1.4 编译器的分类及生成 3
1.5 高级语言及其分类 3
1.6 编译的前端和后端 4
1.7 C语言程序的编译流程 4
1.8 UNIX/Linux环境中的make和makefile 7
1.9 本章小结 12
习题 12
第2章 词法分析的理论与实践 13
2.1 词法分析器的需求分析 13
2.1.1 词法分析器的功能 13
2.1.2 分离词法分析的原因 14
2.2 词法分析器的设计 15
2.2.1 输入及其处理 15
2.2.2 单词符号的描述:正规文法和正规式 15
2.2.3 单词符号的识别:超前搜索 21
2.2.4 状态转换图及其实现 22
2.3 有穷自动机 28
2.3.1 确定的有穷自动机 28
2.3.2 非确定的有穷自动机 29
2.3.3 NFA到DFA的转化 29
2.3.4 DFA的化简 31
2.4 正规式和有穷自动机的等价性 33
2.5 词法分析器的生成器 35
2.6 本章小结 37
习题 37
第3章 语法分析 39
3.1 上下文无关文法 39
3.1.1 上下文无关文法的定义 39
3.1.2 语法树和推导 40
3.1.3 二义性 43
3.2 语法分析器的功能 45
3.3 自上而下的语法分析 45
3.3.1 LL(1)分析方法 45
3.3.2 预测分析程序 53
3.4 自下而上的语法分析 56
3.4.1 移进与归约 56
3.4.2 LR分析 57
3.4.3 LR(0)分析 60
3.4.4 SLR(1)分析 66
3.4.5 LR(1)分析 69
3.4.6 LALR(1)分析 72
3.4.7 分析方法比较 76
3.5 语法分析器的生成器 76
3.6 本章小结 78
习题 78
第4章 语义分析与处理 81
4.1 语法制导定义与语法制导翻译 82
4.2 中间语言 91
4.3 语句的翻译 95
4.3.1 说明语句的翻译 95
4.3.2 赋值语句的翻译 100
4.3.3 控制语句的翻译 106
4.3.4 过程调用语句的翻译 120
4.4 本章小结 121
习题 121
第5章 符号表 124
5.1 符号表的作用 124
5.2 符号表的内容 125
5.3 符号表的组织 127
5.4 符号表的实现 129
5.5 名字的作用域 132
5.6 本章小结 135
习题 135
第6章 运行时存储组织 137
6.1 静态存储分配 138
6.2 动态存储分配 138
6.3 栈式动态存储分配 140
6.3.1 简单的栈式存储分配的实现 140
6.3.2 嵌套过程语言的栈式实现 141
6.4 堆式动态存储分配 145
6.5 存储分配与安全性 146
6.5.1 缓冲区溢出原理 146
6.5.2 缓冲区溢出的防范 147
6.6 本章小结 148
习题 148
第7章 优化 150
7.1 优化技术简介 150
7.2 局部优化 151
7.3 循环优化 161
7.4 全局优化 172
7.4.1 到达–定值数据流分析 173
7.4.2 活跃变量数据流分析和
定值–引用数据流分析 178
7.4.3 可用表达式数据流分析 182
7.4.4 复写传播数据流分析 186
7.5 本章小结 192
习题 193
第8章 目标代码生成 196
8.1 代码生成器设计中的问题 196
8.1.1 代码生成器的输入 196
8.1.2 目标程序 196
8.1.3 指令选择 197
8.1.4 变量存储空间分配 197
8.2 寄存器分配 197
8.2.1 寄存器分配描述 198
8.2.2 线性扫描的寄存器分配 199
8.2.3 图着色的寄存器分配 201
8.3 窥孔优化 202
8.3.1 规则提取 202
8.3.2 扫描匹配和等价语义转换 203
8.3.3 举例说明 205
8.4 一个代码生成器实例 205
8.4.1 待用信息和活跃信息 206
8.4.2 寄存器描述和地址描述 207
8.4.3 代码生成算法 208
8.5 本章小结 209
习题 209
第9章 多样化编译 210
9.1 软件多样化需求 210
9.2 多变体执行及其环境 211
9.3 海量软件多样性 212
9.4 多样化编译技术 213
9.5 多样化编译的应用 216
9.6 本章小结 217
习题 217
第10章 反编译及其关键要素 218
10.1 什么是反编译 218
10.1.1 反编译概念 218
10.1.2 编译与反编译 219
10.1.3 反编译器 219
10.2 反编译的基本过程 219
10.2.1 按照反编译技术实施的顺序划分 220
10.2.2 按照反编译实践中的具体操作划分 224
10.2.3 按照反编译器的功能块划分 227
10.3 反编译的前世今生 228
10.3.1 建立——20世纪60年代 228
10.3.2 发展——20世纪70年代 229
10.3.3 瓶颈期——20世纪80年代 231
10.3.4 反编译的春天来了——20世纪90年代 232
10.3.5 持续的研究——进入21世纪 235
10.3.6 身边的反编译——我国对反编译的研究 236
10.4 反编译的局限、先决条件和评价指标 236
10.4.1 反编译技术面临的宏观问题 236
10.4.2 反编译技术面临的技术性问题 237
10.4.3 反编译的先决条件 238
10.4.4 反编译器的评价指标 238
10.5 反编译的应用领域和研究重点 239
10.5.1 应用领域 239
10.5.2 研究重点 239
10.6 本章小结 240
习题 240
第11章 反编译器的整体框架 241
11.1 “I型”反编译器的框架 241
11.1.1 上下文环境的衔接 241
11.1.2 dcc反编译器的框架 242
11.2 经典多源反编译框架简介 243
11.2.1 UQBT 243
11.2.2 Hex-Rays 247
11.2.3 BAP 247
11.3 具备静态反编译能力的二进制翻译器ITA 248
11.3.1 ITA总体框架 248
11.3.2 二进制文件解码 249
11.3.3 语义映射 251
11.3.4 过程抽象分析 251
11.3.5 优化代码消除 251
11.3.6 C代码产生器 252
11.3.7 从ITA看静态反编译存在的普遍问题 252
11.3.8 对ITA静态反编译框架的扩展ITA-E 253
11.4 具备动静结合反编译能力的二进制翻译器UTP-MBC 254
11.4.1 UTP-MBC架构设计需要解决的主要问题 255
11.4.2 UTP-MBC翻译器的相关研究 256
11.4.3 一体化翻译架构设计 257
11.5 本章小结 260
习题 261
第12章 反编译中的指令解码和语义描述与映射

机械工业出版社旗舰店店铺主页二维码
机械工业出版社旗舰店 微信公众号认证
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

编译与反编译技术

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:cmp1952
机工书院官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏