如果String包含整数,则读取MIPS字符串

时间:2016-10-30 19:58:08

标签: assembly mips

我正在尝试创建一个汇编语言程序(在MIPS中),该程序读取用换行符分隔的用户输入值。我想要读取一个包含整数的字符串(例如," A4",而是MIPS读取字符串为" A"以及整数为" 4& #34;。如何让MIPS读取字符串为" A4"使用系统调用?这是我到目前为止我的代码中的一部分,它应该在一行上读取字符串,以及下一行的整数。

buffer: .space 2
.text
.globl main
main:
li $v0, 8
la $a0, buffer
li $a1, 2
syscall
move $s0, $a0


li $v0, 5               
syscall
move $s1, $v0

1 个答案:

答案 0 :(得分:2)

系统调用8最多读取$a1-1个字符,因为它总是NUL-终止字符串。因此,通过将$a1设置为2,然后输入"A4",您将在"A\0"中获得字符串buffer。如果您希望能够读取2个字符加上NUL终止符,请将$a1设置为3。