请输入您要查询的百科知识:

 

词条 控制流图
释义

控制流图(CFG, Control flow graph)

控制流图(CFG)是用在编译器中的一个抽象数据结构。它是一个过程或程序的抽象表现,由编译器在内部维护。每个在图形中的节点代表一个基本块,例如,没有任何跳跃或跳跃目标的直线代码块;跳跃目标以一个块开始,和以一个块结束。定向边缘被用于代表在控制流中的跳跃。在那里,在大部分介绍中,两个特定的设计块:项目块,通过它控制到流图的输入,和编辑块,通过它全面控制流输出。

控制流图CFG是一有向图G = (N, E, nentry, nexit). 其中,N是节点集,程序中的每个语句都对应图中的一个节点;边集E = {< n1,n2 > | n1, n2∈ N且n1执行后,可能立即执行n2}; nentry 和nexit分别为程序的入口和出口节点。它具有唯一的起始结点START和唯一的终止结点STOP。CFG中的每个结点至多只能有两个直接后继。对于有两个直接后继的结点v,其出边具有属性“T”或“F”,并且在CFG中的任意结点N,均存在一条从START经N到达STOP的路径。

程序控制流图的绘制:

􀀹 程序语句格式化、规范化处理;

􀀹 识别程序的逻辑行;

􀀹 根据程序逻辑行之间的控制关系绘制CFG图;

􀀹 在CFG图上作适当的标记,例如入/出口、真假分支等。

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/2/26 2:08:45