Аз съм нов потребител на MIPS и имам проблеми с отпечатването на масив от числа с плаваща запетая, които вземам от потребителя, а също така имам проблеми с намирането на най-често повтарящото се число с плаваща запетая.
Ето кода, в който мога да приема въведеното от потребителя, но не мога да отпечатам масива.
#data declarations: declare variable names used in program, storage allocated in RAM
.data
max: .word 12
temp: .word 1
num: .space 96
input1: .asciiz "Enter a number:\n" #prints the statement
output1: .asciiz "The number that is repeated more often than any other is "
output2: .asciiz " with "
output3: .asciiz " repititions.\n"
output4: .asciiz "The array contains the following: \n"
.text
.globl main
main:
lw $t1, temp
lw $t2, max
Loop:
la $a0, input1 # $a0 = address of input1
li $v0, 4 # $v0 = 4 --- this is to call print_string()
syscall
li $v0, 6
syscall
la $t0, num
s.s $f0, 0($t0)
addi $t0, $t0, 8
addi $t1, $t1, 1
ble $t1, $t2, Loop
la $a0, output4
li $v0, 4
syscall
l.s $f12, 0($t0)
li $v0, 2
syscall
jr $ra
temp
иmax
са неинициализирана памет, така че когато заредите съдържанието на тази памет в$t1
и$t2
, резултатите могат да бъдат произволни. Какво се опитваш да направиш? Освен това, това не изглежда като функция, която извиквате от някъде другаде, така че защо завършва сjr $ra
вместо syscall 10 (крайна програма)? - person RobertB   schedule 05.12.2013$f12
. Изпълнете syscall 2, за да го отпечатате. Повторете. - person Michael   schedule 05.12.2013