Неожиданное десятичное значение в выводе консоли MIPS - PullRequest
0 голосов
/ 30 июня 2018

Я использовал следующий код, чтобы получить 2 пользовательских ввода. Но когда вводятся целые числа, неожиданное десятичное значение задается с помощью пользовательского ввода

.text

main:

la $a0, input_1
li $v0, 4
syscall

li $v0, 5
syscall

move $t1, $v0
syscall

la $a0, input_2
li $v0, 4
syscall

li $v0, 5
syscall

move $t2, $v0
syscall

li $v0, 10
syscall


.data

input_1 : .asciiz "Enter integer 1\n\n"

input_2 : .asciiz "Enter integer 2\n\n"

Вывод на консоль

* Введите целое число 1

1

268501062Введите целое число 2

2

0,00000000 *

Здесь 1 и 2 - пользовательские данные

1 Ответ

0 голосов
/ 01 июля 2018

вам не нужно вызывать syscall после перемещения значений между регистрами. Просто удалите два системных вызова сразу после двух инструкций перемещения. Вот отредактированный код.

 .text

main:

la $a0, input_1
li $v0, 4
syscall

li $v0, 5
syscall

move $t1, $v0


la $a0, input_2
li $v0, 4
syscall

li $v0, 5
syscall

move $t2, $v0


li $v0, 10
syscall


.data

input_1 : .asciiz "Enter integer 1\n\n"

input_2 : .asciiz "Enter integer 2\n\n"
...