我需要帮助创建两个函数。第一个函数需要找到一个单词的长度。对于输入,该函数获取单词的第一个字符的地址并返回单词的长度(单词在数组中)。
第二个函数需要删除数组中字数多于平均值的单词(从数组中的所有字符开始计算),所以假设单词中的平均值是4个字符,所有单词都超过4个需要删除字符。
提前致谢!
更新:prntscr.com/ezjylq
答案 0 :(得分:0)
我给你两个示例代码我希望这有帮助。
此代码查找任意ASCII字符串的长度
给定字符串:
“你好\ n” 个
<强>输出:强>
6
.data
message: .asciiz "Hello\n"
.text
main:
li $t1,0
la $t0,message #load message to t0
loop:
lb $a0,0($t0) #load one byte of t0 to a0
beqz $a0,done #branch if a0 = 0
addi $t0,$t0,1 #increament t0
addi $t1,$t1,1 #increament the counter t1
j loop
done:
li $v0,1 #print an integer
add $a0, $0,$t1 #add the counter to a0
syscall
li $v0,10 #exit program
syscall
这是打印“Hello World”的功能。
.data
message: .asciiz "Hello World.\n"
.text
main:
jal displayMessage
li $v0,10 #exit function
syscall
displayMessage:
li $v0,4 #printing string
la $a0,message #save the message to argument $a0
syscall
jr $ra