正确答案:C解析:优化是对中间代码进行优化,为了能进行优化,首先要分析清楚程序中的控制流程和数据流程。对于中间代码来说,基本块是控制流程简单的基本元素,它是一个顺序执行的语句(四元式)序列,其中只有一个入口和一个出口。控制流程图能很好地表示程序中基本块之间的关系,对程序的控制流和数据流分析是在程序的控制...
下列关于程序控制流图的说法中,错误的是() A. 控制流图由结点和边组成 B. 控制流图有且只能有一个开始结点和一个结束结点 C. 控制流图的一个结点可以是由 and 、
下列关于程序控制流图的说法中,错误的是()A.控制流图由结点和边组成B.控制流图有且只能有一个开始结点和一个结束结点C.控制流图的一个结点可以是由 and 、 or 等逻辑运算符连接的复合条件表达式D.当程序有多个终止结点时,可以增加空结点来将多个终止结点汇合到一个结束结点上 搜索 题目 下列关于程序控制流图...
控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。控制流图的节点代表一个基本块,定向边代表控制流的方向。其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套的判断。本题程序中,这条...
控制流图是描述程序控制流的一种图示方式,有节点和定向边构成。节点代表一个基本块,定向边代表控制流的方向。其用例数等于控制流程图的环路复杂性V(G),即是:(1)控制流程图中的区域个数。(2)边数-结点数+2。(3)判定数+1。我们应用第二种方法,V(G)=10-8+2,故正确答案为:B...
2.1.2 控制流图CFG 控制流图是编译器表示程序的一种方式。 控制流图是BB(Basic Block,基本块)为结点,根据程序在BB之间的流动方向作为有向边的有向图。 2.1.3 LLVM LLVM是The Low Level Virtual Machine(低级虚拟机)的简称,是当前各种研究领域最常用的编译器,也是很多大公司普遍使用的编译器。和其他编译器一样...
根据程序流程图,完成: (1) 画出相应的程序控制流图; (2) 给出控制流图的邻接矩阵; (3) 计算 McCabe 环形复杂度; (4) 找出程序的一个独立路径集合。 1. 画出相应的程序控制流图 2. 给出控制流图的邻接矩阵 3. 计算 McCabe 环形复杂度 一个程序模块的环路复杂度用来衡量模块中判定结构的复杂程度,数量...
1)控制流图 2)计算圈复杂度 在上图中边数为9,节点数为8,通过公式的计算结果为3,所以该程序的...
下图 所示为某个程序的控制流图。试计算 以下程序控制流图的环形复杂度(圈复杂度), V(G) 等于 ( )A.5B.4C.6D.7
程序调用图(CG)和控制流图(CFG)主要有两个区别:1.描述对象不同;2.流向节点不同;3.分析目的不同;4.粒度不同。描述对象不同是指,程序调用图描述了程序中函数之间的调用关系,而控制流图描述了程序执行路径。 1.描述对象不同 程序调用图描述了程序中函数之间的调用关系,它主要关注程序模块化结构和函数之间的依赖...