加2的整数使我发疯了

时间:2019-02-08 02:44:47

标签: 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

0 个答案:

没有答案
相关问题