Flujo de control


En informática , el flujo de control (o flujo de control ) es el orden en el que se ejecutan o evalúan las sentencias , instrucciones o llamadas a funciones individuales de un programa imperativo . El énfasis en el flujo de control explícito distingue un lenguaje de programación imperativo de un lenguaje de programación declarativo .

Dentro de un lenguaje de programación imperativo , una declaración de flujo de control es una declaración que da como resultado una elección sobre cuál de dos o más caminos seguir. Para lenguajes funcionales no estrictos , existen funciones y construcciones de lenguaje para lograr el mismo resultado, pero generalmente no se denominan declaraciones de flujo de control.

A su vez, un conjunto de sentencias se estructura generalmente como un bloque , que además de agrupar, también define un ámbito léxico .

Las interrupciones y las señales son mecanismos de bajo nivel que pueden alterar el flujo de control de una manera similar a una subrutina , pero generalmente ocurren como respuesta a algún estímulo o evento externo (que puede ocurrir de forma asincrónica ), en lugar de la ejecución de un proceso en línea. declaración de flujo de control.

A nivel de lenguaje máquina o lenguaje ensamblador , las instrucciones de flujo de control generalmente funcionan alterando el contador del programa . Para algunas unidades centrales de procesamiento (CPU), las únicas instrucciones de flujo de control disponibles son las instrucciones de ramificación condicionales o incondicionales , también denominadas saltos.

Los tipos de instrucciones de flujo de control admitidas por diferentes lenguajes varían, pero se pueden categorizar por su efecto:


Un diagrama de flujo que muestra el flujo de control.