| 表目录 | 第1-7页 |
| 图目录 | 第7-8页 |
| 摘要 | 第8-9页 |
| ABSTRACT | 第9-10页 |
| 第一章 绪论 | 第10-16页 |
| ·软件逆向工程技术简介 | 第10-11页 |
| ·二进制翻译概述 | 第11-13页 |
| ·二进制翻译的实现方法 | 第11-12页 |
| ·二进制翻译面临的困难 | 第12-13页 |
| ·二进制翻译的研究历史和现状 | 第13-14页 |
| ·本文的贡献 | 第14-15页 |
| ·本文的组织结构 | 第15-16页 |
| 第二章 IA-64体系结构特点及二进制翻译系统ITA简介 | 第16-23页 |
| ·IA-64体系结构简介 | 第16-18页 |
| ·IA-64指令集简介 | 第16-17页 |
| ·IA-64特性简介 | 第17-18页 |
| ·ITA系统简介 | 第18-21页 |
| ·ITA系统框架 | 第18-19页 |
| ·实例分析 | 第19-21页 |
| ·小结 | 第21-23页 |
| 第三章 数据流分析 | 第23-31页 |
| ·数据流分析基本概念 | 第23-26页 |
| ·CFG的产生及控制流分析的基本概念 | 第23-26页 |
| ·程序的数据流分析 | 第26页 |
| ·数据流分析中相关定义的算法实现 | 第26-30页 |
| ·算法描述语言及相关数据结构 | 第27-28页 |
| ·算法描述 | 第28-30页 |
| ·小结 | 第30-31页 |
| 第四章 指令语义提升过程中的类型分析 | 第31-37页 |
| ·数据类型分析的相关概念 | 第31-33页 |
| ·ITA系统中数据类型分析的依据 | 第31-32页 |
| ·ITA系统中基本数据类型分析的重要性 | 第32页 |
| ·ITA系统中基本数据类型和高级C语言数据类型的区别和联系 | 第32-33页 |
| ·基本数据类型分析的原理及方法 | 第33-36页 |
| ·“&”和“*”运算符 | 第33-34页 |
| ·普通算术指令的描述 | 第34-35页 |
| ·内存读写指令 | 第35页 |
| ·转移指令 | 第35-36页 |
| ·小结 | 第36-37页 |
| 第五章 基于过程的数据类型分析技术 | 第37-46页 |
| ·变量重命名技术 | 第37-39页 |
| ·过程变量的DU-chains和UD-chains | 第37页 |
| ·消除寄存器重用 | 第37-38页 |
| ·举例说明 | 第38-39页 |
| ·变量类型推导的规则 | 第39-40页 |
| ·格理论在变量类型推导中的应用 | 第40-45页 |
| ·格的概念及相关性质 | 第40-42页 |
| ·数据类型推导中格的定义及说明 | 第42-43页 |
| ·基于格的变量类型分析 | 第43-45页 |
| ·小结 | 第45-46页 |
| 第六章 测试结果及分析 | 第46-49页 |
| ·测试环境介绍 | 第46页 |
| ·测试结果分析 | 第46-48页 |
| ·代码膨胀率 | 第47页 |
| ·代码执行时间 | 第47-48页 |
| ·小结 | 第48-49页 |
| 结束语 | 第49-51页 |
| 参考文献 | 第51-54页 |
| 作者简历 攻读硕士学位期间完成的主要工作 | 第54-55页 |
| 致谢 | 第55页 |