quinta-feira, 11 de outubro de 2012

CPU - Instruções




Definição de instruções de máquina

Instruções de máquina são operações que um processador suporta e fornece ao programador, com a finalidade de facilitar o acesso ao componente. Cada instrução deve conter informação necessária para permitir a sua execução pela CPU. Essa informação compreende:

  • Código de operação: especifica a operação a ser realizada:
  • Operando fonte: constituem dados de entrada para a operação;
  • Operando de destino: resultado produzido pela operação;
  • Endereço da próxima instrução: local onde deve ser procurada a próxima instrução, após o término da corrente.

Formato das instruções

As instruções são divididas em duas de acordo com o conjunto de bits:

  1. Indica o que é a instrução e a sua execução, sendo constituída de um só campo;
  2. Refere-se aos dados que serão manipulados na operação, podendo ser constituída por mais um campo.

Assim sendo cada uma das instruções é composta pelos seguintes campos:

  • Um campo denominado código de operação – cujo valor binário é a identificação da operação, que servirá de dado de entrada para os descodificadores da área de controlo.
  • O restante grupo de bits, intitulado de campo de operando – cujo valor binário indica a localização do dado que será manipulado durante a sua execução.

 

Tamanho das Instruções

O conjunto de instruções de um processador pode ser feito de duas maneiras:

  • Instruções com C.Op. de tamanho fixo;
  • Instruções com C.Op. de tamanho variável.

As instruções de tamanho fixo têm todas a mesma quantidade de bits. A sua implementação e manipulação durante a execução de um programa são facilitadas, assim sendo o tamanho do C.Op. e da próxima instrução tende a aumentar, influenciando assim o tamanho ocupado pelo programa na MP.

As instruções de tamanho variável têm a possibilidade de redução de espaço ocupado na MP, já que permite a codificação de um número maior de instruções usando uma menor quantidade de bits. Este tipo de implementação permite maior versatilidade entre quantidades de bits do código de operação e a dos campos operandos, criando um conjunto de instruções com maior número de instruções, sem aumentar demasiado o tamanho total das instruções.


Tipos de instruções

O conjunto de instruções utilizados deve ser de uma linguagem de alto nível( Basic, Pascal, Fortran, C, etc.), assim podemos classificar as instruções de máquina nos seguintes tipos:

  • Processamento de dados: instruções aritméticas e lógicas;
  • Armazenamento de dados: instruções de memória;
  • Movimentação de dados: instruções de E/S;
  • Controlo: instruções de teste e desvio.

  • Instruções aritméticas são aquelas que fornecem capacidade computacional para processamento de dados numéricos.
  • Instruções lógicas são aquelas que operam sobre bits de uma palavra, na condição de bits e não de números, oferecendo, portanto a capacidade de processar qualquer outro tipo de dado que se deseje empregar, sem estabelecimento de relações matemáticas ou algébricas entre esses dados.

  • Instruções de memória são aquelas utilizadas para mover os dados entre a memória e os registradores da CPU, uma vez que operações aritméticas e lógicas são executadas sobre dados armazenados nesses registradores.

  • Instruções de E/S são necessárias para transferir programas e dados para memória e para transferir resultados de processamentos computacionais de volta.

  • Instruções de teste são aquelas utilizadas para testar o valor de uma palavra de dados ou do estado de uma etapa de processamento computacional.

  • Instruções de desvio são usadas para desviar a execução do programa para uma nova instrução, muitas vezes em função do resultado de um teste.

Ciclo de Instrução


Sem comentários:

Enviar um comentário