我目前正在使用SPIM(QTSpim)来了解MIPS。关于SPIM命令以及它们如何工作,我有几个问题。
1)据我所知,MIPS通常使用16位来显示值,但为什么QTSpim中的寄存器只有8位?
2)对于寄存器$ 11(t3),原始值为10.在机器执行[sra $ 11,$ 11,2]指令后,值从10变为4.这是怎么回事?当10只是2位时,2个位置如何向右移位?
谢谢。
答案 0 :(得分:1)
1)不确定你的想法在哪里。 QtSpim模拟基于MIPS32的机器,因此通用寄存器为32位。
2)10十六进制是10000二进制。将它向右移两次,你得到100二进制,即4位小数。您还可以将其视为16位小数除以4,因为sra
位N
位是2^N
的(带符号)除法。