大学课件数据流分析.ppt
《大学课件数据流分析.ppt》由会员分享,可在线阅读,更多相关《大学课件数据流分析.ppt(16页珍藏版)》请在优知文库上搜索。
1、第第2章章 数据流分析数据流分析 内容概述内容概述数据流分析推导的是数据沿着程序执行路数据流分析推导的是数据沿着程序执行路径流动的信息径流动的信息 过程内的分析:可用表达式分析、到达定值分过程内的分析:可用表达式分析、到达定值分析等析等 过程间分析过程间分析 Shape分析分析 理论基础理论基础 数据流方程的求解数据流方程的求解第第2章章 数据流分析数据流分析 数据流分析的用途数据流分析的用途 编译优化、程序维护编译优化、程序维护 程序安全性的检查程序安全性的检查 和编译原理课程的区别和编译原理课程的区别基于源代码的结构化分析方法,而不是基于基基于源代码的结构化分析方法,而不是基于基本块和程序
2、流图的分析本块和程序流图的分析从过程内讨论到过程间从过程内讨论到过程间强调理论基础强调理论基础第第2章章 数据流分析数据流分析 数据流分析的正确性数据流分析的正确性数据流分析所得结论同程序运行时的情况一致数据流分析所得结论同程序运行时的情况一致需要定义机器模型和操作语义,证明所得结论需要定义机器模型和操作语义,证明所得结论对操作语义可靠对操作语义可靠由于数据流分析收集的信息同基本块和控制流由于数据流分析收集的信息同基本块和控制流有关,通常和变量值无关,因此不同于一般的可有关,通常和变量值无关,因此不同于一般的可靠性证明,例如靠性证明,例如Hoare逻辑的赋值公理是可靠的逻辑的赋值公理是可靠的x
3、=1 x:=x+1 x=2活跃变量分析活跃变量分析 活跃变量分析的正确性活跃变量分析的正确性需要将该正确性概念形式地表达出来需要将该正确性概念形式地表达出来在活跃变量的初值相同的不同格局下在活跃变量的初值相同的不同格局下 S,1 和和 S,2 执行程序执行程序S的结果应该是一样的的结果应该是一样的再细化一下,程序每执行一步,得到的不同格再细化一下,程序每执行一步,得到的不同格局局 S,1 和和 S,2 中,活跃变量的值都相同中,活跃变量的值都相同第第2章章 数据流分析数据流分析 数据流分析的基础数据流分析的基础 把各种数据流模式作为一个整体来抽象地研把各种数据流模式作为一个整体来抽象地研究,然
4、后可以形式地回答数据流算法的下列究,然后可以形式地回答数据流算法的下列几个基本问题:几个基本问题:在什么情况下数据流分析中使用的迭代算法是正在什么情况下数据流分析中使用的迭代算法是正确的?确的?该迭代算法所得解的精度如何?该迭代算法所得解的精度如何?该迭代算法是否收敛?该迭代算法是否收敛?数据流方程的解的含义是什么?数据流方程的解的含义是什么?第第2章章 数据流分析数据流分析 为一类数据流模式建一个共同理论框架为一类数据流模式建一个共同理论框架 总结已讨论过的四种数据流分析模式总结已讨论过的四种数据流分析模式 整理出该框架的一些基本特征或原则整理出该框架的一些基本特征或原则规范框架中的性质空间
5、要满足的特征规范框架中的性质空间要满足的特征规范框架中迁移函数要满足的性质规范框架中迁移函数要满足的性质给出框架的定义给出框架的定义区分单调框架和分配框架的区别区分单调框架和分配框架的区别常量传播数据流模式不是分配的常量传播数据流模式不是分配的第第2章章 数据流分析数据流分析 位向量框架(位向量框架(Bit vector framework)Single-bit representation of each data flow property Separability of solution Data flow properties can be evaluated independentl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 课件 数据流 分析