Ybadoo - Soluções em Software Livre
Tutoriais
Compiladores

(Ricarte, 2008) Os projetistas da segunda geração do processador hipotético devem considerar as seguintes demandas:

  1. Acrescentar duas novas operações;
  2. Dobrar o número de registradores de dados;
  3. Dobrar a largura dos dados de 8 para 16 bits;
  4. Ampliar a capacidade de endereçamento de 16 para 256 posições.

Qual o impacto isolado de cada uma dessas modificações no formato binário das instruções do processador? E, se todas as modificações forem implantadas, qual será o novo formato da instrução?

 

  1. acrescentar duas novas operações: ao invés de dois bits para representar os códigos das quatro operações (22 = 4), serão necessários três bits para representar os códigos das seis operações (23 = 8), aumentando o comprimento das instruções do processador de oito para nove bits, conforme apresentado na Tabela 01.
  2. dobrar o número de registradores de dados: ao invés de dois bits para representar o endereçamento dos quatro registradores (22 = 4), serão necessários três bits para representar o endereçamento dos oito registradores (23 = 8), aumentando o comprimento das instruções LOAD, STORE e BZERO de oito para nove bits, e o comprimento da instrução ADD de oito para onze bits, considerando que as instruções do processador possam ter comprimentos diferentes. Caso o comprimento das instruções do processador seja fixo, o mesmo deve ser alterado de oito para onze bits, conforme apresentado na Tabela 02.
  3. dobrar a largura dos dados de 8 para 16 bits: essa alteração não interfere no formato binário das instruções do processador, conforme apresentado na Tabela 03.
  4. ampliar a capacidade de endereçamento de 16 para 256 posições: ao invés de quatro bits para representar o endereçamento das dezesseis posições memória (24 = 16), serão necessários oito bits para representar o endereçamento das duzentas e cinquenta e seis posições de memória (28 = 256), aumentando o comprimento das instruções LOAD, STORE e BZERO de oito para doze bits, e o comprimento da instrução ADD não seria alterado, considerando que as instruções do processador possam ter comprimentos diferentes. Caso o comprimento das instruções do processador seja fixo, o mesmo deve ser alterado de oito para doze bits, conforme apresentado na Tabela 04.

Se todas as modificações forem implantadas, o novo formato da instrução seria:

Neste caso, o comprimento das instruções LOAD, STORE e BZERO seria alterado de oito para catorze bits, e o comprimento da instrução ADD seria alterado de oito para doze bits, considerando que as instruções do processador possam ter comprimentos diferentes. Caso o comprimento das instruções do processador seja fixo, o mesmo deve ser alterado de oito para catorze bits, conforme apresentado na Tabela 05.

Ricarte, Ivan. (2008). Introdução à Compilação. Rio de Janeiro: Elsevier. 264 páginas.