2016-10-28 16 views
0

Я работаю над назначением, которое читается целыми числами и помещает их в массив до тех пор, пока не будет введен отрицательный. Я должен найти среднее из целых чисел, но результаты должны быть распечатаны как float. Я пробовал несколько способов сделать это, но пока я запускаю его на QTSpim, результат говорит «nan».Разделите целые числа и распечатайте результат как поплавок в сборке MIPS

Вот часть моего кода

mfc1 $t6, $f1 #t6 is the sum 
cvt.s.w $f1, $f1 
mfc1 $t7, $f2 #t7 is the number of ints 
cvt.s.w $f2, $f2 
div.s $f0, $f1, $f2 
mov.s $f12, $f0 
li $v0, 2 
syscall 

ответ

0

mfc1 является Move Слово С плавающей точкой (rt = fs). Предположительно, вы хотите вместо mtc1 (fs = rt).

+0

Благодарим вас за ответ, однако его изменение с mfc1 на mtc1 по-прежнему создает «nan», когда я запускаю его – ajuliettesoc

+0

Ну, я ответил на основании кода, который вы нам показали. Если вы все еще получаете неправильный вывод, то '$ t6' и/или' $ t7' не содержат того, что вы ожидаете от них. Используйте одноступенчатую функцию в QtSpim, чтобы выполнить вычисления, пока не найдете, где любой из этих регистров получит неожиданное значение. – Michael

+0

Я понял, что публикация всего кода будет слишком много, поэтому я включил только то, что было важно, но, возможно, мне нужно. $ t6 и $ t7 тоже правы – ajuliettesoc