首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

非常基础的MIPS有关问题求教

2012-03-09 
非常基础的MIPS问题求教C/C++ codefor(i 0 i 10 i++)a + b假设a, b, i, j分别在寄存器r0, r1, r2,

非常基础的MIPS问题求教

C/C++ code
for(i = 0; i < 10; i++)    a += b;


假设a, b, i, j分别在寄存器r0, r1, r2, r3中;假设r1也为数组D的首地址。
把上面那段C代码翻译成MIPS,下面这样写对么?
add$r2, $zero, $zero
LOOP:add$r0, $r0, $r1
FOR:addi$r2, $r2, 1
slti$r3, $r2, 10
bne$r3, $zero, LOOP

上课时貌似都听懂了,自己写又云里雾里的,觉得好像应该用些J类型的但是又不懂到底哪里需要,望指点
J Addr
JAL Label
JR $ra
这3个是怎么用的?望大侠给出最简单清晰的例子

还有这句用MIPS应该怎么写呢?
D[a] = b + a;
不清楚地址里是另一个reg的时候指令上是怎么表示的~

都是最基础的内容,大侠随便敲一下告诉我就好~谢谢!



[解决办法]
书上已经写的很清楚 了

热点排行