A unidade lógica aritmética (ALU) e a unidade de controle (Cu) são dois componentes fundamentais da unidade de processamento central de um microprocessador (CPU). Eles trabalham juntos para executar instruções obtidas na memória. Pense neles como o cálculo do cérebro e o centro de comando, respectivamente.
1. A unidade lógica aritmética (ALU):a calculadora O trabalho da ALU é executar operações aritméticas e lógicas nos dados. Isso inclui:
* operações aritméticas
: Adição, subtração, multiplicação, divisão, incremento, decréscimo.
* operações lógicas: E, ou, xor, não, comparações (maior que, menor que, igual a).
*
Operações bitwise: Mudança de bits para a esquerda ou direita (útil para multiplicação/divisão por poderes de 2), mascarar bits.
Como funciona:
1.
entrada de dados: A ALU recebe dados (operandos) de registros-pequenos locais de memória de alta velocidade na CPU.
2. Execução da operação: Com base nas instruções recebidas do CU, a ALU executa a operação especificada nos dados de entrada.
3.
Resultado Saída: O resultado da operação é armazenado em um registro ou de volta à memória. O ALU também geralmente define sinalizadores (bits de status) indicando coisas como transbordamento (resultado muito grande para o registro), resultado zero ou transporte (um dígito transportado durante a adição). Esses sinalizadores são usados pelo Cu para tomar decisões sobre instruções subsequentes.
2. A unidade de controle (Cu):o chefe O Cu é o "cérebro" da CPU, direcionando o fluxo de dados e operações. Suas principais responsabilidades são:
1.
busca de instrução: O Cu recebe instruções da memória, uma de cada vez, com base no contador do programa (PC), que acompanha o endereço da próxima instrução.
2.
Decodificação de instrução: O Cu decodifica a instrução buscada para determinar qual operação precisa ser executada e quais dados estão envolvidos. Essa decodificação envolve a compreensão do código OPC (código de operação) e operandos (dados).
3.
operando busca: O Cu recupera os operando necessários dos registros ou da memória.
4.
operação ALU: O Cu envia os operandos e o código de operação para o ALU. Em seguida, aguarda a ALU concluir sua operação.
5.
Resultado armazenamento: Depois que o ALU terminar, o Cu direciona o armazenamento do resultado de volta para um registro ou local de memória.
6.
Atualização do contador de programas: O Cu atualiza o contador do programa para apontar para a próxima instrução na sequência do programa.
7.
ramificação e saltos: Com base nos sinalizadores definidos pela ALU (ou outras condições), o Cu pode alterar o fluxo do programa. Isso pode envolver o salto para um local diferente na memória ou executando os blocos de código condicionalmente (por exemplo, `if` declarações).
8.
Controle de entrada/saída (E/O): O CU gerencia a comunicação com dispositivos externos (como teclados, monitores e discos rígidos).
Interação
entre ALU e Cu: A ALU e a CU trabalham de uma maneira bem acoplada:
* O CU orquestra todas as operações. Ele diz à ALU o que fazer e onde obter os dados.
* O ALU executa os cálculos e define sinalizadores, fornecendo feedback ao CU.
* O Cu usa esse feedback para tomar decisões sobre as próximas etapas na execução do programa.
Em essência, o ALU é responsável pelo "O QUE" (realizando cálculos), enquanto o Cu é responsável pelo "como" (controlando o fluxo de dados e operações). Eles são interdependentes e essenciais para a funcionalidade de qualquer microprocessador.