Escolar Documentos
Profissional Documentos
Cultura Documentos
Resumo }
}
}
O trabalho tem o propósito de nos fazer enxergar
como uma máquina se comporta recebendo instruções int main(){
de alto nível. Mostrando o processo desde o dado int dados[5];
inicial até o dado processado pela mesma. for(int i = 0; i < 5; i++){
1
Código em Linguagem de Máquina LT34E – Arquitetura e Organização de Computadores
blt $t0, 20, loop # se não chegou no final addi $t0, $t0, 4 # incrementa posição do
do vetor, fica no loop vetor
blt $t0, 20, loop2 # se não chegar no final
do vetor, fica no loop
jr $ra # finaliza função e retorna
jal parImpar # chama a função para o main
parImpa
li $v0, 10
syscall # finaliza programa
parImpar:
li $t0, 0 # incrementador do vetor
li $t3, 2 # divisor para a instrução
div usada no loop 2
loop2:
add $s1, $s0, $t0 # obtém endereço de um
índice do vetor
lw $t1, ($s1) # copia um número do
vetor para o registrador
$t1
2
Código em Linguagem de Máquina LT34E – Arquitetura e Organização de Computadores
imagem 2: Representação do Decodificador MIPS. Seguindo esta tabela podemos ver que temos
três tipos de instruções, as imediatas que são do tipo I,
Podemos notar que se trata de uma instrução as usuais que são do tipo R e as de jumps que são do
imediata e por isso o modelo em que será representada tipo J. Cada uma delas tem sua forma de ser
por binário é do formato I, tendo, portanto, a seguinte representada e cabe ao tradutor analisar e traduzir cada
máscara. uma dela para os tipos adequados.
A tabela (1) em anexo nos dá uma ideia do que
cada registrador significa, sendo utilizada o Tipo-R
como exemplo, mas nos casos Tipo-I e Tipo-J apenas
temos a presença de um valor imediato e um Endereço
consequentemente.
Para sabermos quais são os códigos de cada
operação temos a tabela (2) que nos dá em binário cada
Opcode: Código da operação.
código dos registradores, suas funções e mais abaixo
rs: registrador do primeiro operando fonte.
temos a tabela (3) dos Opcodes mais utilizados.
rt: registrador do segundo operando fonte.
Immediate: Valor em binário que será utilizado para OPCODE DECIMAL BINÁRIO
realizar a operação.
OR 36 100 100
JR 8 001 000
Conclusão
Tipo I
li $t0, 0 [1] Mips, Compilando Funções e Procedimentos
no MIPS. Disponível em<
https://www.embarcados.com.br/funcoes-e-
100011 01000 000000 procedimentos-no-mips/>. Acesso em 24/05/2019
0000000000000000
Tipo R