-
Arquitetura MIPS 32 bits
→ Utilizaremos o simulador SPIM
→spim -f codigo.spim
-
Um processador MIPS de 32 bits possui 32 registradores em sua unidade principal, que opera com inteiros.
- Possui 18 registradores para uso geral
- Possui 14 registradores reservados
Notação ID $t0 a $t7 8-15 8 regs. temporários $s0 a $s7 16-23 8 regs. salvos $t8 e $t9 24 e 25 2 regs. temporários Restante ---
Uso reservado
-
Todas as operações aritméticas seguem este formato:
add a, b, c
→ a = b + csub a, b, c
→ a = b - cmul a, b, c
→ a = b * cdiv, a, b, c
→ a = b / c
-
Quem são as variáveis? Registradores!
→ Pequenas unidades de memória de acesso imediato dentro do processador
→ Memória que armazena 32 bits (4 bytes)
→ Estão no topo da hierarquia de memória. Sendo assim, é o tipo de memória mais rápida e mais cara.
- Código alto nível
/*
* f = $s0
* g = $s1
* h = $s2
* i = $s3
* s = $s4
*/
int f = (g + h) - (i + j);
- Código baixo nível assembly
add $t0, $s1, $s2 # t0 = g + h
add $t1, $s3, $s4 # t1 = i + j
sub $s0, $t0, $t1 # f = t0 - t1