我对汇编语言非常陌生。我正在阅读有关 MIPS 体系结构的信息,但我对寄存器格式(R-Format)的最后一个字段感到困惑。这是它的视觉表现,
谁能用来帮助我,第六个字段表示是什么,我们如何计算呢?
提前致谢。
最佳答案
正如描述中提到的那样,所有R型指令(例如ADD
,AND
,SLL
等)都将6个最高有效位(= op)设置为0,这意味着区分它们的唯一方法是查看6个最低有效位。位(= funct)。换句话说,它们确定指令类型。也许一个例子会有所帮助:
ADD $1, $2, $3
具有:op = 0 (as all R-type instructions)
rs = 2
rt = 3
rd = 1
shamt = 0
funct = 0x20 = 0b00000100000 = 32
因此,编码将是:0000 0000 0100 0011 0000 1000 0010 0000
例如XOR
(另一种R型)指令功能是0b100110 = 0x26 = 38
。因此,您可以通过查找要编码的指令来“计算”它。(取自MIPS Instruction Reference)。
关于assembly - func在R格式指令集中意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6929440/