基于转换的程序分析技术的研究与应用
| 摘要 | 第1-5页 |
| ABSTRACT | 第5-7页 |
| 目录 | 第7-10页 |
| CONTENTS | 第10-13页 |
| 第一章 绪论 | 第13-23页 |
| ·本文研究背景 | 第13-20页 |
| ·程序分析评价技术现状 | 第14-16页 |
| ·程序理解技术现状 | 第16-18页 |
| ·程序度量技术现状 | 第18-19页 |
| ·程序转换技术现状 | 第19-20页 |
| ·本文研究要点 | 第20-22页 |
| ·词法和语法分析器的构造 | 第20-21页 |
| ·程序度量 | 第21页 |
| ·交互函数到内部函数的转换 | 第21页 |
| ·内部函数分析 | 第21-22页 |
| ·程序的比较和评价 | 第22页 |
| ·课题目标 | 第22页 |
| ·内容组织 | 第22-23页 |
| 第二章 AnalyseC系统框架 | 第23-28页 |
| ·AnalyseC的系统框架 | 第23-24页 |
| ·开发AnalyseC使用的主要工具 | 第24-28页 |
| ·ANTLR的引入 | 第24-25页 |
| ·程序转换中使用的数据结构 | 第25-28页 |
| 第三章 C语言分析器的构造 | 第28-34页 |
| ·C语言分析器 | 第28-32页 |
| ·词法分析器 | 第28-31页 |
| ·语法分析器 | 第31-32页 |
| ·语法树分析器 | 第32-34页 |
| ·语法树的结构 | 第32-33页 |
| ·语法树分析器的构造 | 第33-34页 |
| 第四章 在结构层次的程序分析 | 第34-42页 |
| ·传统软件度量 | 第34-36页 |
| ·环形复杂度度量 | 第34-35页 |
| ·Halstead软件科学理论 | 第35-36页 |
| ·面向对象的软件度量 | 第36页 |
| ·结构相似性分析 | 第36-40页 |
| ·控制结构分析 | 第36-38页 |
| ·函数调用分析 | 第38-39页 |
| ·数据结构分析 | 第39-40页 |
| ·程序结构分析器的设计 | 第40-42页 |
| 第五章 在语义层次的程序分析 | 第42-63页 |
| ·交互函数到内部函数的转换 | 第43-47页 |
| ·概述 | 第43-44页 |
| ·内联规则 | 第44-45页 |
| ·避免重名 | 第45-46页 |
| ·内联递归函数 | 第46-47页 |
| ·内部函数分析 | 第47-61页 |
| ·程序基本转换 | 第47-55页 |
| ·将程序用程序依赖图表示 | 第55-59页 |
| ·程序高级转换 | 第59-61页 |
| ·程序语义分析器的设计 | 第61-63页 |
| 第六章 程序的比较和评价 | 第63-69页 |
| ·程序切片 | 第63-65页 |
| ·程序的比较和评价 | 第65-68页 |
| ·文字差别和语义差别 | 第65-66页 |
| ·比较和评价 | 第66-68页 |
| ·程序比较器的设计 | 第68-69页 |
| 第七章 运行示例与应用讨论 | 第69-77页 |
| ·运行示例 | 第69-75页 |
| ·结构层次的分析示例 | 第70-72页 |
| ·语义层次的分析示例 | 第72-75页 |
| ·应用讨论 | 第75-77页 |
| 结束语 | 第77-79页 |
| 参考文献 | 第79-84页 |
| 攻读硕士学位期间发表的论文 | 第84-86页 |
| 致谢 | 第86页 |