Skip to content
Snippets Groups Projects
Commit a63b8c48 authored by Matheus Horstmann's avatar Matheus Horstmann :horse:
Browse files

mais testes

parent 0e10cd71
No related branches found
No related tags found
No related merge requests found
.CODE
0x00400000 0x34300000 ori $16, $1, 0 [dados]
0x00400004 0x34300000 ori $16, $1, 0 [dados]
0x00400008 0x36730125 ori $19,$19,293 12 ori $s3, $s3, 0x125 # carrega 125 em $s3 ($19)
0x0040000c 0x8e120000 lw $18,0($16) 13 lw $s2, 0($s0) # carrega 00aa0101h em $s1($17)
0x00400010 0xae120014 sw $18,14($16) 14 sw $s2, 20($s0) # escreve 00aabb01h nas posições de memória 10010014h-10010017h
0x00400014 0xae120018 sw $18,18($16) 15 sw $s2, 24($s0) # escreve 00aaba01h nas posições de memória 10010018h-1001001bh
0x00400018 0x8e190004 lw $25,4($16) 16 lw $t9, 4($s0) # carrega 0000bb00h em $t9($25)
0x0040001c 0xae19001c sw $25,28($16) 17 sw $t9, 28($s0) # escreve 0000bb00h ($t4=$12) nas posições de memória 1001001ch-1001001bh
0x00400020 0x220c0018 addi $12,$16,18 18 addi $t4, $s0, 24 # carrega endereço do 2o sw 6 em $12
0x00400024 0x220d001c addi $13,$16,22 19 addi $t5, $s0, 28 # carrega endereço do 3o sw 6 em $13
0x00400028 0x24080009 addiu $8,$0,9 20 li $t0, 9 # carrega 9 em $8
0x0040002c 0x24090006 addiu $9,$0,6 21 loop: li $t1, 6 # carrega 6 em $9
0x00400030 0x240a000a addiu $10,$0,10 22 li $t2, 10 # carrega 10 em $10
0x00400034 0xBD0A0000 lri $10,$8 23 lri $t2, $t0 # coloca o conteudo do do registrador apontado no ultimos 5bits de t0 ou seja t2<=6
0x00400038 0x11ac0004 beqm $13,$12,3 24 beqm $t5, $t4,end # vai para o final se o se ($t5)==($t4), na primeira vez não eh na segunda eh
0x0040003c 0x220b0014 addi $11,$16,14 25 addi $t3, $s0, 20 # carrega endereço do 1o sw
0x00400040 0xae12001c sw $18,22($16) 26 sw $s2, 28($s0) # escreve 00aaba01h nas posições de memória 1001001ch-1001001bh
0x00400044 0x116cfff9 beqm $11,$12,ff8 27 beqm $t3, $t4,oi # vai para oi: se ($s1)==($s3) no caso volta
0x00400048 0x3e000008 jr $31 28 end: jr $ra
.DATA
0x10010000 0x00aa0101 0x0000bb00 0x00000000 0x00000000
#
# Autor: Fernando Gehm Moraes
# Revisão: Ney Calazans 07/05/2008
#
.text
.globl main
main:
la $s0, dados # inicializa o ponteiro para a área de dados
ori $s3, $s3, 0x125 # carrega 125 em $s3 ($19)
lw $s2, 0($s0) # carrega 00aa0101h em $s1($17)
sw $s2, 20($s0) # escreve 00aabb01h ($t3=$11) nas posições de memória 10010014h-10010017h
sw $s2, 24($s0) # escreve 00aaba01h ($t4=$12) nas posições de memória 10010018h-1001001bh
lw $t9, 4($s0) # carrega 0000bb00h em $t9($25)
sw $t9, 28($s0) # escreve 0000bb00h ($t4=$12) nas posições de memória 1001001ch-1001001bh
addi $t4, $s0, 24 # carrega endereço do 2o sw 6 em $12
addi $t5, $s0, 28 # carrega endereço do 3o sw 6 em $13
li $t0, 9 # carrega 9 em $8
loop: li $t1, 6 # carrega 6 em $9
li $t2, 10 # carrega 6 em $9
lri $t2, $t0 # coloca o conteudo do do registrador apontado no ultimos 5bits de t0 ou seja t2<=6
beqm $t5, $t4,end # vai para o final se o se ($t5)==($t4), na primeira vez não eh na segunda eh
addi $t3, $s0, 20 # carrega endereço do 1o sw
sw $s2, 28($s0) # escreve 00aaba01h nas posições de memória 1001001ch-1001001bh
beqm $t3, $t4,loop # vai para oi: se ($s1)==($s3) no caso volta
end: jr $ra
.data
dados: .word 0x00AA0101 0x0000BB00
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment