问题 单项选择题

在编译程序时,采用的对中间代码的优化方法中,()是基于循环结构进行的优化处理。
①合并已知量
②删除归纳变量
③删除多余运算
④强度削弱
⑤复写传播
⑥代码外提

A.①③⑤

B.②④⑥

C.①②③

D.④⑤⑥

答案

参考答案:B

解析:

针对循环能采用的优化技术有代码外提、强度削弱和删除归纳变量。代码外提是把循环体中不随循环的执行改变计算结果的表达式外提到循环的前置块中。强度削弱是用较弱的运算代替较强的运算,例如用加法运算代替乘法运算。为了实施这种优化技术,要先找出归纳变量,什么是归纳变量呢若在循环体中变量i只有唯一的形式i:=i+c,其中c是常量,则称i是基本归纳变量。若在循环体中有另一个变量j,其值是基本归纳变量i的线性函数,则称j是普通归纳变量。删除归纳变量是在强度削弱后进行的,用和基本归纳变量同族的归纳变量代替之,使基本归纳变量成为无用赋值,故可删去。

单项选择题 A1型题
单项选择题