控制流分析

✍ dations ◷ 2024-10-19 00:28:43 #程序分析

控制流分析(Control flow analysis)简称CFA,是一种确认程式控制流程的静态代码分析技术。控制流程会以控制流图(英语:control flow graph)来表示。对于函数编程语言及面向对象程式设计,CFA都是指计算控制流程的算法。

控制流分析一词最早是由Neil D. Jones及Olin Shivers开始使用。

对于像是Scheme之类有高阶函数的编程语言,不一定可以会程式中直接看出函数呼叫的目标,例如以下的程式片段

(lambda (f) (f x))

根据上述程式无法确认程序f是指什么,此情形下的控制流分析需考虑何时会执行此程式码,及当时的传入值。

抽象释义、约束补偿及型别系统都可以用来进行控制流分析。

相关

  • 病原体病原体(希腊语:πάθος pathos “痛苦”、“热情” 与 -γενής -genēs “生产者”),在生物学中,从最古老和最广泛的意义上说,就是任何可以产生疾病的事物。病原体也可以称
  • 托管理事会主席副主席联合国托管理事会是联合国负责监督托管领土行政管理的机构,成立于1945年。成立托管制度的目的是进行去殖民,使托管领土朝自治或独立的方向发展,尊重托管领土居民的自
  • 卡西奥多罗斯卡西奥多罗斯(英语:Cassiodorus,约485年-约585年),中世纪初期罗马城的政治家与作家,出身于贵族家庭,早年即博学多才,后参加政务。不久转攻基督教事务,曾因为被东罗马帝国的军队所俘获
  • 陶文 ‧ 甲骨文 ‧ 金文 ‧ 古文 ‧ 石鼓文籀文 ‧ 鸟虫书 ‧ 篆书(大篆 ‧  小篆)隶书 ‧ 楷书 ‧ 行书 ‧ 草书漆书 ‧  书法 ‧ 飞白书笔画 ‧ 
  • 北京协和医学院北京协和医学院(英语:Peking Union Medical College,缩写为PUMC)位于中国北京,1917年由美国洛克菲勒基金会捐资,以约翰霍普金斯大学医学院为蓝本建立,是中国第一所开设八年制临床医
  • 被子植物花发育被子植物花发育的ABC模型由E. Coen和E. Meyerowitz在1991年提出。这个模型是以对花器官发育有缺陷的突变体的观察为基础的。ABC模型概括了在花的不同部位中,不同类型的转录因
  • 联邦条例《邦联条例》(英语:Articles of Confederation),全称为《邦联和永久联合条例》(英语:Articles of Confederation and Perpetual Union),是美利坚合众国13个创始州共同承认并遵守的第
  • MBA智库百科MBA智库百科是一部基于Wiki技术的中文百科全书计划,其目标是专注于经济管理领域知识的创建。MBA智库百科创建于2006年,内容依照GNU自由文档许可证(GFDL)公开发行。其条目内容的
  • 合法化的国家新西兰同性婚姻是一项于2013年4月17日在新西兰国会,以77张支持票对44张反对票,三读通过合法化的法案,于同月19日获得御准,法案计划于同年8月19日起正式生效。新西兰也成为全球第
  • 嵩岳寺塔坐标:34°30′06″N 113°00′57″E / 34.50167°N 113.01583°E / 34.50167; 113.01583嵩岳寺塔,位于中华人民共和国河南省郑州市登封市嵩阳街道境内的嵩山南麓,是一座密檐式