Сборка - Qtspim

.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), так как я пытался удалить ее, и ничего не изменилось, я увеличил и уменьшил размер буфера с существованием этой строки, а также ничего не изменилось?! ... Так в чем же преимущество этой линии?

1 ответ

(la $a0 , buffer) используется для загрузки "буферного" адреса в $a0 чтобы позволить вам написать строку, когда вы положите 8 в $v0 и положить длину "буфера" в $a1 затем syscall

Я думаю, чтобы решить вашу проблему syscall должно быть раньше move $t0 , $a0 в вашем коде.

Другие вопросы по тегам