.text
la $t5, prompt
la $t6, prompt_char
la $t7, prompt_loop
loop:
la $t4, 0 #count
askForString:
la $a0, prompt
li $v0, 4
syscall
li $v0,8
li $a1, 5 #text einlesen
syscall
j quit
quit:
la $a0, ($t7)
li $v0, 4 #info
syscall
li $a1, 5 #text einlesen
li $v0,5
syscall
beq $v0,1,askForString
exit:
.data
prompt: .asciiz "\nPlease enter text\n"
prompt_char: .asciiz "\njetzt bitte ein Zeichen\n"
prompt_loop: .asciiz "\nAgain: 1, Exit: 0.\n"
endl: .asciiz "\n\n"
Проблема, если я продолжу цикл, мой текст, сохраненный в «подсказке» (системный вызов 4), будет переопределен вводом (системный вызов 5).
мне нужно очистить $ a0 или в чем проблема. пожалуйста помогите
Мой результат:
Пожалуйста, введите текст
аа
Снова: 1, Выход: 0.
1
аа (здесь должно быть "Пожалуйста, введите текст")
1
Снова: 1, Выход: 0.
1
1 (здесь должно быть «Пожалуйста, введите текст»)
0
Снова: 1, Выход: 0.
0
- программа закончила работу (опущено вниз) -