第七讲 程序切片 程序分析技术知识 研究生课件.pptVIP

第七讲 程序切片 程序分析技术知识 研究生课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七讲 程序切片 程序分析技术知识 研究生课件.ppt

程序分析技术 第七讲 程序切片 1 引言 Weiser于1979年提出 一个程序片S是由程序P中那些可能影响在某一兴趣点n计算变量v的值的部分组成的。 简单例 read a; read b; read c; a=z*b; print b; print a; 二、基本概念 定义一、控制流图 控制流图CFG=(N,E,S,e,v)是一个有向图,其中, N是结点集,程序中的语句和消词属于该集, E是边集,语句n,m之间的控制关系用(n,m) ? E表示,记为 n ? m S,e分别为开始结点和终点结点 V E ? {true, false, ?} 谓词输出边标true或false,其它边标? of 定义二 、CFG的路径,路径可到达,可实现路径 若任意1≤i ≤k-1,G中的一个结点序列P=n1,….nk. 都满足ni ? ni+1,则称P为G的一个路径。 如果G中存在一条路径q….p则称p是q的可到达的,记为q ? p。 G中的一条路径是程序的一条可执行序列,则称是可实现的。 实例 sum=0; mul=1; a=1; b=read(); while(a=b){ sum=sum+a; mul=mul*a; a=a+1;} write(sum); write(mul); 1 2 3 4 5 6 7 8 9 10 false true START EXIT 定义五、数据依赖 如果结点m,n满足下面条件,则称n 数据依赖于m,记n ? m, 存在一个变量v,有vεdef(m)∩ref(m) 存在(m,m1,…mk,n)且v?def(mi) i=1,…k. 定义六、程序依赖图 程序依赖图PDG=(N’,E’,S’,e’)是cfg=(N,E,S,e)的一个变形, 其中, N’=N, S’=S, e’=e, E’=Edd∪Ecd 定义七、传递依赖 如果m,n满足如下两点,则称m传递依赖于n,记为m→n 存在一条路径p=n1,n2…nz,n1=n,nk=m,且每一ni+1都控制依赖或数据依赖于ni p是一条可实现的路径。 *d

您可能关注的文档

文档评论(0)

yuzongxu123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档