1

我正在尝试在 MIPS 中打印一些字符串,但是当我尝试打印第一条消息时,程序会打印所有这些字符串。

.data
first_msg: .ascii "Podaj pierwsza liczbe: "
second_msg: .ascii "Podaj druga liczbe: "
third_msg: .ascii "Wieksza z tych liczb jest liczba "

.text
main:
la $a0, first_msg
li $v0, 4
syscall

li $v0, 10
syscall

抱歉我的语言不好,感谢您的帮助!

4

1 回答 1

2

您不会以空值终止字符串。使用asciiz而不是ascii.

.ascii str
Store the string in memory, but do not null-terminate it.

.asciiz str
Store the string in memory and null-terminate it.

这个

因此,您的代码变为:

.data
first_msg: .asciiz "Podaj pierwsza liczbe: "
second_msg: .asciiz "Podaj druga liczbe: "
third_msg: .asciiz "Wieksza z tych liczb jest liczba "

.text
main:
la $a0, first_msg
li $v0, 4
syscall

li $v0, 10
syscall
于 2013-05-20T12:10:06.420 回答