O MIPS (Microprocessor without Interlocked Pipeline Stages) é uma arquitetura de processadores criada na década de 1980 pela MIPS Computer Systems. Ele se tornou bastante conhecido por seu design simples e eficiente, sendo utilizado em sistemas embarcados, roteadores, consoles de videogame e em aplicações acadêmicas. O processador MIPS possui cerca de 32 instruções básicas (load, store, add, sub, branch, jump etc.), e 32 registradores de uso geral, o que facilita operações sem acesso constante à memória. São exemplos de instruções MIPS as apresentadas a seguir:
- add $d, $s, $t: adiciona $s e $t, armazena em $d.
- addu $d, $s, $t: adiciona $s e $t sem sinal, armazena em $d.
- sub $d, $s, $t: subtrai $t de $s, armazena em $d.
- subu $d, $s, $t: subtrai $t de $s sem sinal, armazena em $d.
- mult $s, $t: multiplica $s por $t, resultado em hi/lo.
- multu $s, $t: multiplica $s por $t sem sinal, resultado em hi/lo.
- div $s, $t: divide $s por $t, quociente em lo, resto em hi.
- divu $s, $t: divide $s por $t sem sinal, quociente em lo, resto em hi.
- addi $t, $s, imm: adiciona imediato imm a $s, armazena em $t.
- beq $s, $t, label: desvia para label se $s == $t.
- bne $s, $t, label: desvia para label se $s != $t.
- bgt $s, $t, label: desvia para label se $s > $t.
- blt $s, $t, label: desvia para label se $s < $t.
- j label: salta para label.
- jal label: salta para label e armazena o endereço de retorno em $ra.
- jr $s: salta para o endereço contido em $s.
- lw $t, mem: carrega a palavra da memória para $t.
- sw $t, mem: armazena a palavra de $t na memória.
Ao implementar funções, considere que:
- $a0 – $a3 são registradores usados como argumentos para funções;
- $v0 – $v1 são registradores de retorno das chamadas de funções;
- $t0 – $t9 são registradores temporários e não preservados pelas funções;
- $s0 – $s7 são registradores preservados pelas funções chamadas; e
- $ra é armazena o endereço para retornar à função chamadora.
Utilizando algumas dessas instruções e alguns dos registradores, um exemplo de código MIPS é mostrado a seguir:

Considerando as informações apresentadas e os conceitos relacionados com a organização e arquitetura de computadores, elabore texto discorrendo, necessariamente, sobre:
- a diferença entre os conjuntos RISC e CISC de instruções e o enquadramento da arquitetura MIPS nesses conjuntos [valor: 3,50 pontos];
- o conceito de interrupção e a relação desse conceito com o código-fonte MIPS apresentado [valor: 3,00 pontos];
- a hierarquia de memória e a vantagem de se utilizar as estruturas de memória indicadas no código [valor: 3,00 pontos].
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
Ops! Esta questão ainda não tem resolução em vídeo.



