Как мне разрешить попытку выполнить не-инструкцию с кодом ошибки 0x00400024 в Qtspim? - PullRequest
0 голосов
/ 08 мая 2020

Я работаю над домашним заданием, которое запрашивает у пользователя температуру в градусах Цельсия, которая читается как значение с плавающей запятой с помощью службы обработки прерываний. Затем температура будет преобразована в градусы Фаренгейта и распечатана. Это то, что у меня есть, и я не уверен, как это исправить. Я пробовал использовать 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
...