第11章 代码优化.pptVIP

  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文档。上传文档
查看更多

公共表达式节省是通过四元式的节省来实现的。目前已提出多种实现方法,其中包括:值编码法,依赖数法,逻辑尺法,DAG法等。值编码方法:按一定规则给四元式中的每个变量进行编码,使得具有相同编码的变量具有相同值。判定两个四元式是否等价的方法是看其分量的编码是否分别相同。第30页,共59页,星期日,2025年,2月5日 判断四元式等价的关键是判断两个变量的值是否等价。使问题复杂化的主要因素是间接变量的存在。 间接变量:引用型形参变量存复合变量地址的临时变量 为了判断一个变量是否依赖于间接变量,引进编码#,首先使间接变量取编码#;其次,假设(ω,A,B,C)且A,B中有一个编码取#,则令C的编码取#。如果四元式有一分量的编码为#,则该四元式就不可节省。第31页,共59页,星期日,2025年,2月5日设当前四元式为(ω,A,B,C),且用newn表示新的编码值。值编码规则:1.开始对一切X,令n(X)=0,以表示未编过码。2.若操作数A是未编过码的并且是非间接变量,则给新的编码(否则给老的编码)IFindirect(A)THENN(A):=#ELSEIFn(A)=0THENn(A)=newn第32页,共59页,星期日,2025年,2月5日3.对操作数B类似步骤2。4.对于C的处理过程是:a)(=:,A,-,C)情况IFdirect(C)THENn(C):=n(A)ELSEn(C):=#b)([],A,B,C),(·,A,B,C)情况n(C):=#c)其他情况:IFn(A)=#∨n(B)=#THENn(C):=#ELSEn(C):=newn第33页,共59页,星期日,2025年,2月5日例:(下边四元式中没有间接变量)X:=1Z:=X*YX:=1W:=X*Y得到的四元式如下:第34页,共59页,星期日,2025年,2月5日446.(=:,T2,-,W)1245.(*,X,Y,T2)114.(=:,1,-,X)333.(=:,T1,-,Z)1232.(*,X,Y,T1)111.(=:,1,-,X)编码四元式第35页,共59页,星期日,2025年,2月5日多边扫描公共表达式节省算法:设新老变量名表为ML,每当一个四元式被节省时要填写ML表。1.置ML表为空,令所有量均无编码,i:=i0.2.若QT[i]的OPR1或OPR2∈ML,则用ML中的老名代替OPR1或OPR2.(使用新老变量名表ML)3.若QT[i]为非考虑类,则转8.(处理下一四元式)4.对QT[i]中的三个变量进行编码.5.若QT[i].ω=“=:”,则转8.第36页,共59页,星期日,2025年,2月5日例:A:=3*X+YB:=(3*X+Y)*A得到的四元式如下:6.若QT[i]的OPR1或OPR2的编码为#,则转8.7.若存在i’使QT[i’]≈QT[i](等价),则a.QT[i]:=($,-,-,-)b.ML[m]:=(QT[i].RESU,QT[i’].RESU)(填写新老变量名表ML)8.i:=i+1;若本块未完转,否则结束.第37页,共59页,星期日,2025年,2月5日(=:,T5,-,B)887.(=:,T5,-,B)(*,T2,A,T5)5(7)586.(*,T4,A,T5)($,-,-,-)3(6)475.(+,T3,Y,T4)($,-,-,-)1264.(*,3,X,T3)(=:,T2,-,A)553.(=:,T2,-,A)(+,T1,Y,T2)3452.(+,T1,Y,T2)(*,3,X,T1)1231.(*,3,X,T1)优化后编码优化前第38页,共59页,星期日,2

文档评论(0)

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

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

1亿VIP精品文档

相关文档