String 打印从mips中的字符串提取的字符
我正在尝试打印给定字符串中的第一个字符。但不管我怎么做,我都做不到。 这是我的密码:String 打印从mips中的字符串提取的字符,string,char,mips,String,Char,Mips,我正在尝试打印给定字符串中的第一个字符。但不管我怎么做,我都做不到。 这是我的密码: .data string: .asciiz "stringer" char: .asciiz "c" .text .globl main main: li $v0, 4 # 4 is the print_string syscall. la $a0, string # load the addr of
.data
string: .asciiz "stringer"
char: .asciiz "c"
.text
.globl main
main:
li $v0, 4 # 4 is the print_string syscall.
la $a0, string # load the addr of the given string into $a0.
syscall
li,$v0, 11 # service 11 is print character
lb $t1, 0 ($a0)
syscall
exit:
li $v0, 10 # return control to SPIM OS
syscall
谢谢。应该是
磅$A00($a0)
谢谢!假设我想在之后移动到字符串上的下一个字符,我应该向代码中添加什么?正如Konrad指出的,您要打印的字符必须存储在$a0
中。由于字符的大小为一个字节,因此打印第二个字符将是lb$a0,1($a0)
,第三个lb$a0,2($a0)
,依此类推。您可能对$t1
(例如)中的计数器感兴趣,该计数器在打印一个字符后以一个单位递增,因此您可以访问以下一个。