Добавление 2 целых дает мне безумно большое число - PullRequest
0 голосов
/ 08 февраля 2019

Я только начинаю изучать mips, поэтому я не знаю много об этом, но мы делаем проект в классе, где я должен попросить консоль ввести 2 целых числа в качестве входных данных, а затем добавить их и распечатать результат.Я чувствую, что мой код должен работать, но по какой-то причине, когда я ввожу 2 маленьких числа, это дает мне огромное количество, которое не имеет никакого смысла.Например, я ввожу 1 и 1 как 2 целых числа и получаю 537002100 в качестве ответа.Не уверен почему.Я уверен, что только что сделал какую-то глупую легкую ошибку, но я не могу понять, что это такое.

.data
str: .asciiz "What is the first value?\n"

str2: .asciiz "What is the second value?\n"

#first word
a: .word 0

#second word
b: .word 0

#result
c: .word 0

.text

.globl main

main:

la a0, str # printrString(str)
li v0, 4    
syscall

li v0, 5 # a = getInteger()    
syscall    
sw v0, a

li v0, 11 # ptintChar('\n')     
li a0, '\n'    
syscall

la a0, str2 # printString(str2)    
li v0, 4    
syscall

li v0, 5 # b = getInteger()    
syscall    
sw v0, b

la t0, a    
la t1, b    
la t2, c    
add t2, t0, t1    
sw t2, c

lw a0, c    
li v0, 1 # c = printInteger(c)    
syscall

li v0, 10 # exit() - stops the program    
syscall

Когда я ввожу 1 и 1, я должен получить 2, но я получаю 537002100

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...