我刚开始学习架构,对MIPS和ARM架构之间有些困惑。
我了解到MIPS主要有两种指令格式:I和R(还有J)。我读了关于这些表示格式、rs、rt、opcode以及相关内容的介绍。我还查看了Patterson(第四版)的《COA》书,该书着重介绍ARM ISA。在这个版本中,指令表示方式不同。这些差异是由于不同的架构造成的吗?而且,我使用MIPS ISA的书与ARM汇编代码略有不同。
例如,Patterson第IV版说:
LDR r5,[r3,#32]
STR r1,[r4,#48]
另一篇我阅读的MIPS文章则表示
lw r5,[r3,#32]
sw r1,[r4,#48]
这种差异是由于它们遵循的ISA不同还是它们是同一ISA的两个不同版本?您能否解释一下MIPS和ARM之间的关键区别?
lw $5, 32($t3)
或者sw $a0, 48($t4)
的东西。 - phuclv