2013-03-25 41 views
1

我最近在我的MIPS课中得到了一份任务,正在寻找一些帮助。MIPS:用户输入数组大小

该问题要求我允许用户输入数字'n'。这个数字将创建大小为n的阵列,其中,用户将然后使用存储在浮点数据的一个例子的运行将如下所示:。

Enter n: 5 
Enter a float: 1.2 
Enter a float: 3.2 
Enter a float: 5.5 
Enter a float: 2.99 
Enter a float: 4.4 

如果n为6,则该阵列将是6,6花车将被输入。有没有办法让用户以这种方式创建数组大小?

注意:我不会那么草率地问,但这本书的书已绝版,在亚马逊(RISC编程入门)上花费300美元,所以我在没有书的情况下学习。任何帮助,将不胜感激!

回答

3

你不得不使用操作系统提供的服务:

  • 使用syscall 4打印您的字符串(与$a0指向ASCIIZ字符串进行打印)
  • 使用syscall 5输入一个整数(你的数组的项数将在$v0
  • 返回使用syscall 9在堆中分配存储器(与$a0指示的字节数来分配),其返回在$v0分配的缓冲区的地址
  • 然后使用syscall 6多次需要输入的浮子(浮子$f0返回)

如何使用系统调用的最小参考可以在中找到MARS模拟器

+0

非常感谢。我正在使用MARS,我不确定这个参考。我会放弃这一点。如果我能弄明白这一点,我会回来检查一下这个答案。 – 2013-03-25 15:56:45