Estrutura de controle: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Etiqueta: Remoção considerável de conteúdo
Linha 1:
Vão se SfODDER25298187
Em [[ciência da computação]], '''estrutura de controlo''' (ou '''fluxo de controle''') refere-se à ordem em que instruções, expressões e chamadas de função são executadas ou avaliadas em [[programa de computador|programas de computador]] sob [[programação imperativa]] ou [[programação funcional|funcional]].
 
Os tipos de estruturas de controle disponíveis diferem de [[linguagem de computador|linguagem]] para linguagem, mas podem ser cruamente caracterizados por seus efeitos. O primeiro é a continuação da execução em uma outra instrução, como na [[estrutura sequencial]] ou em uma instrução <code>jump</code>. O segundo é a execução de um bloco de código somente se uma condição é verdadeira, uma [[estrutura de seleção]]. O terceiro é a execução de um bloco de código enquanto uma condição é verdadeira, ou de forma a iterar uma coleção de dados, uma [[estrutura de repetição]]. O quarto é a execução de instruções distantes entre si, em que o controle de fluxo possivelmente volte para a posição original posteriormente, como chamadas de [[subrotinas]] e [[corotina]]s. O quinto é a parada do programa de computador.
 
[[Interrupção de hardware|Interrupções]] e [[Sinal (ciência da computação)|sinais]] são mecanismos de baixo nível que podem alterar o fluxo de controle de forma similar a uma sub-rotina, mas geralmente em resposta a algum estímulo externo ou um evento ao invés de uma estrutura de controle em uma linguagem.
 
Em nível de [[linguagem de pilinhas]], as instruções de estruturas de controle geralmente funcionam ao alterar o [[contador de programa]]. Para algumas [[CPU]]s, as únicas instruções de estruturas de controle disponíveis são os diversos tipos de <code>jump</code> condicional.
 
== Primitivas ==
=== Etiquetas ===