A-A+

下列说法表述错误的是______。A.控制流分析是数据流分析的基础B.程序流图中的循环结构一

2022-08-12 20:22:28 问答库 阅读 197 次

问题详情

下列说法表述错误的是______。
A.控制流分析是数据流分析的基础
B.程序流图中的循环结构一定具有强连通性和入口结点的唯一性
C.活跃变量信息的采集和分析将为寻找程序中的无用赋值提供信息
D.循环优化中,利用各变量引用点的du链信息可以求出循环中的不变运算

请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:D
本题重在考查du链和ud链的概念和用途。由于数据流分析和相关信息的采集是沿着控制流进行的,因此必须先完成控制流分析,才能进行数据流分析,因此选项A是正确的。由循环的理论定义可知选项B也是正确的。活跃变量信息的采集与分析确定了变量在某点的定义是否会在后续的路径上进行引用,因此可以根据活跃变量信息查找程序中的无用赋值,选项C正确。要确定循环中各个基本块的每个语句是否可以外提至循环外,须查看每个运算对象是否为常数或者定值点是否在循环外,定值点是否在循环外需要根据ud链判断,即查看能够到达某一个引用点的所有定值点。由此可以判断选项D是错误的。

考点:数据流,说法