Você está na página 1de 4

Organização e Arquitetura de Processadores P1 – Exercícios

1. Descreva os conceitos de organização e arquitetura sob o ponto de vista de um processador e apresente um exemplo de cada
conceito.

2. Descreva a diferença básica entre o modelo de memória de Von Neumann e Harvard. Indique uma vantagem que o modelo Harvard
tem frente ao Von Neumann?

3. Quais são os três passos básicos da execução de um processador? Desenhe a máquina de estados finita elementar.

4. Cite quatro elementos que fazem parte de um ISA.

5. Qual a função dos seguintes registradores do MIPS: $pc, $sp e $ra?

6. Quais são os únicos tipos de instrução que acessam à memória de dados? Exemplifique.

7. Para que serve a unidade de extensão de sinal?

8. O que é uma pseudo-instrução e para que serve?


9. Descreva duas situações onde pode ser interessante/necessário utilizar a área de pilha.

10. Descreva dois modos de endereçamento do MIPS e exemplifique instruções que usam este modo.

11. Dado o formato do modo de endereçamento relativo ao PC descrito abaixo, onde o imediato tem 16 bits, qual é a fórmula que gera
o endereçamento do salto tomado?

12. Existe algum modo de endereçamento que consegue endereçar 32 bits diretamente?

13. O modo de endereçamento do tipo direto à imediato (ilustrado abaixo) tem 26 bits para o campo de endereçamento imediato.
Como então é implementado o endereçamento de 32 bits?

14. Apresente um algoritmo de alto nível (Java, C, português estruturado, ...) que descreva o que o código assembly abaixo faz.
Apresente o valor exibido na saída padrão, caso a entrada seja 1, 2, 3, 4, 5, 0?
Resposta:

Imprime:

15. Apresente uma descrição assembly que implementa a função Potencia descrita abaixo.
Resposta:
16. Um aluno está aprendendo a programar e implementou o código C através do assembly descritos abaixo. Contudo, ele notou que o
código não retorna para a função main. Auxilie o aluno a consertar o problema com o uso de pilha.
Código C: Implementação do aluno: Resposta:

17. Ao final da execução do programa abaixo, apresente quais são os valores que estarão nos registradores e na área de memória.
Presuma que os rótulos vet e val estão nos endereços de memória 0x10010000 e 0x10010028, respectivamente.
Resposta:
$t1:
$t2:
$t3:
$v0:

vet:
val:

18. Faça o papel do montador e codifique as instruções sw $ra, 0($sp) e addi $sp, $sp, -4 segundo a arquitetura do
MIPS; apresente a codificação em hexadecimal. Utilize como recurso o formato de instrução fornecido.
sw $ra, 0($sp) addi $sp, $sp, -4

sw rt, Offset(rs)

19. Apresente a instrução que é codificada em 0x000D5940.


20. Dado que o rótulo VAR está no endereço 0x10010004, descubra qual a pseudo-instrução que está codificada com as instruções
0x3c011001 e 0x8c380004 (formato hexadecimal).
0x3c011001 0x8c380004

Você também pode gostar