Pesquisar neste blog

20/12/2020

Corrida de São Silvestre em Linguagem Assembly

Construa um programa para ser colocado no relógio que utiliza um recurso GPS que ao ser pressionado um botão aparece no display quantos quilômetros já foram percorridos. A posição da largada sabendo que o percurso da corrida possui 15 Km, o display também deverá calcular quantos Km falta para concluir a corrida.

Resolução:

.data
kp: .asciiz "Digite o Km percorrido: "
kf: .asciiz "Km finais = "

.text
li $v0, 4 # imprimir uma string
la $a0, kp # a0 = kp
syscall # Execute
li $v0, 5 # Ler um número inteiro
syscall # Executa
move $t0, $v0 # t0 = v0
li $t1, 15 # t1 = 15
sub $t2, $t1, $t0 # t2 = t1 - t0

li $v0, 4 # Imprima uma string
la $a0, kf # a0 = kf
syscall
li $v0, 1
la $a0, ($t2) #a0 = t2
syscall # Executa


Soma com MIPS usando Linguagem Assembly

Soma de 2 números com leitura em MIPS Assembly.

Resolução:

.data
num1: .asciiz "Digite o primeiro numero: "
num2: .asciiz "Digite o segundo numero: "
Resultado: .asciiz "Soma = "
.text
li $v0, 4
la $a0, num1
syscall

li $v0, 5
syscall
move $t0, $v0

li $v0, 4
la $a0, num2
syscall

li $v0, 5
syscall
move $t1, $v0

#tendo os dois valores 
add $t2, $t1, $t0
li $v0, 4
la $a0, Resultado
syscall

li $v0, 4
la $a0, Resultado
syscall

li $v0, 1
move $a0, $t2
syscall


Simulador: MARS 4.5