Анализ потока управления

Материал из wikixw
Перейти к навигации Перейти к поиску

В информатикеанализ потока управления (CFA)-это метод статического анализа кода для определения потока управления программой. Поток управления выражается в виде графика потока управления (CFG). Как для функциональных языков программирования , так и для объектно-ориентированных языков программированиятермин CFA и разработки, такие как k-CFA, относятся к конкретным алгоритмам, вычисляющим поток управления.[сомнительно -обсудить]

Для многих императивных языков программированияпоток управления программой является явным в исходном коде программы. в результате межпроцессный анализ потока управления неявно обычно относится к методу статического анализа для определения приемника(приемников) вызовов функций или методов в компьютерных программах, написанных на языке программирования более высокого порядка. например , в языке программирования с функциями более высокого порядка, такими как Scheme, цель вызова функции может быть не явной: в изолированном выражении

(лямбда (f) (f x))

неясно, к какой процедуре fэто может относиться. Чтобы определить возможные цели, анализ потока управления должен рассмотреть, где это выражение может быть вызвано и какой аргумент оно может получить.

Для анализа потока управления могут использоваться такие методы , как абстрактная интерпретация , решение ограниченийи системы типов.

См. также[править]

Пруф[править]

//web.archive.org/web/20140728203154/http://pages.cs.wisc.edu/~cs701-1/NOTES/3.CONTROL-FLOW-ANALYSIS.html