0
.data
hello: .asciiz "hello "
msg: .asciiz "Enter ur Name: "
buffer: .space 10
.text
.globl main
main:
li $v0 , 4
la $a0 , msg
syscall

li $v0 , 8
la $a0 , buffer
li $a1 , 20

move $t0 , $a0

syscall

li $v0 , 4
la $a0 , hello

syscall

li $v0 , 4
la $a0 , buffer

move $a0 , $t0

syscall

li $v0 , 10

syscall

.end main

//===========

我需要知道这条线 (la $a0, buffer) 的优点是什么,因为我试图删除它并且没有任何改变,随着这条线的存在,我增加和减少了缓冲区大小,也没有任何改变? !... 那么这条线的优势是什么?

4

1 回答 1

1

( la $a0 , buffer) 用于加载“缓冲区”地址,$a0以便在您放入 8 时在其上写入字符串,然后$v0放入“缓冲区”的长度$a1syscall

要解决您的问题,我认为syscall必须move $t0 , $a0在您的代码中。

于 2013-10-31T01:09:51.310 回答