Mips,我如何打印大于10的所有数字

时间:2010-12-13 05:41:05

标签: mips

如何编写MIPS代码来打印数组中大于10的所有数字?

假设:

  • 数组存在于内存块中;
  • 起始地址位于注册$t0;
  • 数组的大小在寄存器$t1;

这是我的期末考试评论表上出现的问题之一,我对此一无所知。因此,我希望任何对MIPS有好处的人都可以帮助我。

1 个答案:

答案 0 :(得分:0)

如果这是在您的期末考试学习表上,那么您应该已经理解了基本语法,那就是说,你需要初始化一个计数器值,并在你的一个临时寄存器中设置它,比如$ t2,你启动它在零。在执行结束时每次迭代代码:

bgt $t2, $t1, BEGINNING_OF_LOOP

这会告诉您是否已经完成了数组循环。您将10存储在一个寄存器中,比如说$ t3,并且每个循环通过数组,您在$ t0处获取值,将寄存器增加一个字的长度,并检查该值是否大于10:< / p>

lw $t4, $t0
addi $t0, $t0, 4
bgt $t4, 10, CODE_TO_PRINT_VARIABLE

这应该会让你顺利进行,但是你需要了解MIPS的基础知识才能回答这样的问题。如果你有时间,我建议你写出这个简短的程序。如果你能看到控制结构至少一次,它有助于巩固你脑海中的概念。希望这有帮助,祝你好运!