以下为“自考编译原理07016复习资料(5)”由自考生网为考生们整理、提供。更多编译原理07016复习资料可查看“自考编译原理07016复习资料”栏目。
点击查看:自考编译原理07016在线题库》》》
1.控制流分析:为了减少冗余的计算,编译程序需要在编译阶段对生成的中间代码的可能的运行性状态进行分析,这一过程称为控制流分析。
2.数据流分析:与此同时编译程序还应分析伴随控制流的各种数据变化情况,这一过程称为数据流分析。
3.控制流图:为了研究指令在运行时所有组合的可能,将每条指令作为有向图的结点,指令I到J有一条有想边,当且仅当指令J在运行时能紧随指令I之后。由此得到的有向图称为控制流图。
4.编译程序的优化过程:编译程序的优化过程就是“分析→变换→再分析→再变换”的,如此往复。
5.基本块:没有任何其他的边引入其中间结点,也没有任何边从中间结点引出,其执行的程序不会被任何控制流所破坏。我们把满足上述条件的最大子图称为基本块。
6.全局优化:通过分析基本块之间的关系而进行的优化称为全局优化。
7.局部优化:全局优化对编译的过程整体进行优化,而在基本块内部进行的优化称为局部优化。
8.公共子表达式:设 x op y为中间代码中赋值号右边的表达式,如果该表达式在中间代码链接中有两次出现,而且第一次出现到第二次出现的任意控制流中都没有对x和y进行直接或间接的赋值,则称x op y为公共子表达式。
9.活跃的、不活跃的:称某一变量x在三地址码某处p活跃的,当且仅当在控制流图中存在一条从p到出口的有向路径,该有向路径上至少有一条语句引用了x且从p到引用x间没有对x的定义语句,否则x是不活跃的。
10.循环不变量:再循环内的一条指令如果其计算结果与循环迭代的次数无关,则称为循环不变量。
11.内循环:前一个循环嵌套后一个循环,后者称为前者的内循环。
12.代码外提:在迭代程序中循环由不变量和常变量组成的表达式进行反复计算无疑是多余的,将它们外提到循环的入口之前进行一次计算即可。由此减少了循环内代码执行的次数。这样的优化方法称为代码外提。
13. 循环展开:循环展开通过减少循环的迭代次数并增大循环体的代码,以减少对归纳变量的赋值和循环边界条件的检测而调高循环整体的执行效率。
以上就是“自考编译原理07016复习资料(5)”的全部内容。
全专业电子资料、题库、学位、网课
最高直省2344元
上千+科次精品网课
买网课即送全真模考题库
五千+科次教材资料
电子资料满三件9折
五千+科次在线题库
全真呈现历年考试试题