Я работаю над домашним заданием, которое запрашивает у пользователя температуру в градусах Цельсия, которая читается как значение с плавающей запятой с помощью службы обработки прерываний. Затем температура будет преобразована в градусы Фаренгейта и распечатана. Это то, что у меня есть, и я не уверен, как это исправить. Я пробовал использовать syscall 10, но безуспешно. Также есть синтаксическая ошибка в "nine: .float 9", в которой я не уверен.
main:
.data
inMsg: .asciiz "Enter Celsius: "
outMsg: .asciiz "Fahrenheit: "
nine: .float 9
five: .float 5
thirtytwo: .float 32
.text
li $v0, 4
la $a0, inMsg ## Print inMsg
syscall
li $v0, 6 ## Ask for float input
syscall
mov.s $f1, $f0
l.s $f2, nine
mul.s $f1, $f1, $f2
l.s $f2, five
div.s $f1, $f1, $f2
l.s $f2, thirtytwo
add.s $f1, $f1, $f2
li $v0, 4
la $a0, outMsg ## Print outMsg
syscall
li $v0, 2
mov.s $f12, $f1
syscall
exit:
li $v0, 10
syscall