Это не официальный сайт wikipedia.org 01.01.2023

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

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

Анализ потока управления — это статический анализ кода для определения порядка выполнения программы. Порядок выполнения выражается в виде графа потока управления.

Для многих языков граф потока управления явно прослеживается в исходном коде программы. Как результат, анализ потока управления обычно относится к статическому анализу кода. В ходе анализа определяются приемники функций и методов, вызванных программами, написанными на языках высокого уровня. И для языков функционального программирования, и для объектно-ориентированных языков программирования термин «Анализ потока управления» означает алгоритм, который формирует граф потока управления.

Термин анализ потока управления (control flow analysis) был впервые использован Нейлом Джонсом (Neil D. Jones)[1] и Олин Шиверс (Olin Shivers)[2].

Для анализа потока управления могут быть использованы: Абстрактная интерпертация[en], Удовлетворение ограничений, Типизация данных.

ПримечанияПравить

  1. Neil D. Jones (1981), Flow analysis of lambda expressions, Automata, Languages and Programming: 114–128, DOI 10.1007/3-540-10843-2_10 
  2. Shivers, Olin (1988), Control-flow analysis in Scheme, Proceedings of the ACM SIGPLAN'88 Conference on Programming Language Design and Implementation (PLDI), SIGPLAN Notices, Vol.23, No.7: 164–174, DOI 10.1145/53990.54007