.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)的优点是什么,因为我试图删除它,但没有什么变化,我随着这行的存在而增加和减少了缓冲区大小,也没有什么变化?!...那么这条线的优势是什么呢?
发布于 2013-10-31 09:09:51
(la $a0 , buffer)用于将"buffer“地址加载到$a0,以便在将8放入$v0并将"buffer”的长度放入$a1然后放入syscall时在其上写入字符串
为了解决你的问题,我认为在你的代码中syscall必须在move $t0 , $a0之前。
https://stackoverflow.com/questions/19696414
复制相似问题