close

Contador de programa

Ir para a navegação Ir para a pesquisa

Na arquitetura de computadores , o contador de programa (muitas vezes abreviado para PC e, em arquiteturas sem segmentação , chamado de ponteiro de instrução ) é um registrador da CPU cuja função é armazenar o endereço de memória da próxima instrução (em linguagem de máquina ) a ser executada. É um registrador de ponteiro , ou seja, aponta para um dado que está na memória no endereço correspondente ao valor contido no próprio registrador. Em algumas arquiteturas, o contador de programa mantém o endereço da instrução que está sendo executada. O contador de programa é utilizado no ciclo buscar-executar que constitui a dinâmica fundamental no funcionamento de um computador ; este ciclo é uma repetição infinita dos seguintes passos:

  1. carregamento da instrução referenciada pelo contador de programa;
  2. atualização (incremento) do contador de programa, para que contenha o endereço da próxima instrução;
  3. execução da instrução carregada.

No loop normal de busca e execução , portanto, o contador de programa é incrementado automaticamente. Além disso, todas as linguagens de máquina fornecem uma ou mais instruções que modificam explicitamente o contador do programa se uma determinada condição se mantiver (por exemplo, se o acumulador tiver todos os bits definidos como 0). Essas instruções permitem que o programa "pule" para uma instrução de programa diferente daquela imediatamente seguinte à que acabou de ser executada e, assim, fornecem a ferramenta fundamental sobre a qual são construídas as estruturas de controle das linguagens de programação .