Beruflich Dokumente
Kultur Dokumente
GABARITO
6. Quando um processador obtém uma cópia da instrução que será realizada naquele
momento, como ele identifica o que ela faz (qual operação) e, em consequência,
inicia sua execução propriamente dita?
Resp: Cada instrução tem um grupo de seus bits que indica qual a operação a ser
realizada (código da operação-C.Op). Em um dos passos do ciclo de instrução, este C.Op.
é introduzido em um dispositivo chamado de decodificador de instrução. Sua saída é
específica para cada instrução e vai desencadear a execução de microperações para
execução da referida operação.
Resp: Uma instrução de máquina é constituída de 2 partes básicas (2 grupos de bits para cada
uma): código de operação e operando (s). O C.Op é um grupo de bits que identifica qual a
operação a ser realizada por aquela instrução; p.ex., a instrução SOMAR A, B tem o C.Op de
SOMAR (em linguagem de máquina é um grupo de bits com esta finalidade. Cada instrução tem
um C.Op. específico, havendo tantos C.Op. quantas operações foram programadas em fábrica
naquele processador.
Campo Operando (s) – Op, identifica o ou os dado(s) que serão manipulados pela instrução. Se é
SOMAR então devem existir 3 operandos (um dado a ser somado com outro dado e o resultado);
há instruções que os 3 campos operandos são explícitos e dizemos que é uma instrução de 3
operandos e há outras que só tem 2 operandos e até mesmo instruções com 1 operando.
Resp: É uma instrução de E/S com 2 operandos. Ela transfere um dado de um registrador para
uma porta de saída (o barramento). No exemplo, o C.Op é OUT e AX é o nome do registrador de
origem e tec7 é a porta de saída especificada (pode ser uma impressora ou outro dispositivo
qualquer de saída).
Usualmente não se precisa saber de cabeça cada significado de instrução assembly (a não ser
programadores muito experientes em uma determinada linguagem), pois basta olhar no manual o
significado. Este exercício serviu apenas para se verificar a lembrança dos slides do vídeo 21, pois
no exemplo de instruções há uma muito semelhante a esta.
No caso, o enunciado informa que toda instrução tem 2 operandos (que são endereços de
cada um dos 16 registradores) mais um campo que toda instrução tem: o do C.Op.
11. A manipulação de dados pelo processador requer que ele entenda o tipo de dados
que vai manipular, de forma a representá-lo corretamente. O tipo de dados é
informado ao processador por:
Qual deve ser a sequência correta das etapas com que um processador realiza suas
atividades durante a execução de um programa? Como é conhecido o conjunto
dessas etapas?
Resp: O ciclo de instrução é usualmente constituído das seguintes etapas:
4– 1 – 3 – 2 – 6 – 7 – 5
13. Por que o registrador Contador de Instrução (CI) ou Programa Counter (PC) é
incrementado sempre que uma instrução é buscada na memória para ser
executada?
Resp: Para que o processamento seja automático. Como se deseja que o processador
execute uma instrução em sequência a outra anterior, ao buscar uma, ele deve já se
preparar para a buscar a outra e para isso, deve obter seu endereço. Ora, como o CI é o
registrador que armazena endereços de instruções, ele deve ser sempre incrementado para
o próximo endereço.
“Decodificar o C. Op. para definir qual a operação a ser realizada e emissão dos
sinais apropriados para sua execução.”
Qual é o dispositivo do processador que é responsável por implementar esta etapa?
E a qual das duas áreas lógicas do processador ele se enquadra?
C.Op Op 1 Op 2
7 bits
a) Se ele possui 108 instruções de máquina, então também deve ter
108 C.Op. e, neste caso, o campo C.Op da instrução deve ter largura mínima de 7 bits
(pois 6 bits só permitiria 64 C.Op). Assim, sobram 40 bits para os dois campos
operandos (47 – 7 = 40) e, conclui-se que cada campo Op deve ter 20 bits, pois é o
resultado da divisão de 40 / 2. Como o campo Op armazena o endereço dos dados,
significa que cada endereço tem 20 bits e N = 2E = 220 = 1M (um mega) endereços.
b) 7 fios de entrada (COp = 7 bits) e no mínimo 108 de saída ( o normal seria ter 128 fios
de saída, pois 27 = 128.
c) Como o sistema tem 32 registradores, isso significa que cada registrador tem um
endereço com largura de 5 bits (25 = 32). E como tem 3 campos de endereços de
registradores, a instrução terá 3 x 5 bits = 15 bits para os campos de R1, R2 e R3. O
campo C.Op permanece com 7 bits, pois foi afirmado para conservar os demais dados.
Então, 7 + 8 = 15 bits seria o tamanho de cada instrução.
16. Quais são os dois tipos de unidade de cálculo que existem atualmente em todos os
processadores?
Resp: Unidade para operações aritméticas com números inteiros e para operações
lógicas (normalmente chamadas de ULA-unidade lógica e aritmética ou Unidade de
Execução) e Unidade para operações acom números representados em ponto flutuante
(números fracionários ou muito grandes ou muito pequenos)
Resp: OPÇÂO A