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


В информатике поток управления (или поток управления ) — это порядок, в котором выполняются или оцениваются отдельные операторы , инструкции или вызовы функций императивной программы . Акцент на явном потоке управления отличает императивный язык программирования от языка декларативного программирования .

В императивном языке программирования оператор потока управления — это оператор, который приводит к выбору, по какому из двух или более путей следовать. Для нестрогих функциональных языков существуют функции и языковые конструкции для достижения того же результата, но они обычно не называются операторами потока управления.

Набор операторов, в свою очередь, обычно структурирован как блок , который помимо группировки также определяет лексическую область действия .

Прерывания и сигналы являются низкоуровневыми механизмами, которые могут изменять поток управления способом, подобным подпрограмме , но обычно возникающим в ответ на какой-либо внешний стимул или событие (которое может происходить асинхронно ), а не выполнение встроенной процедуры . оператор управления потоком.

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

Типы операторов потока управления, поддерживаемые разными языками, различаются, но их можно разделить на категории по их эффекту:


Блок -схема , показывающая поток управления.