我正在开发一个项目,该项目将我们对MIPS命令的使用限制为MicroMIPS。因此,我不能使用addu,subu,sltu等。
我的第一个问题是,是否可以从22条MicroMIPS指令中制作这些命令?
我的第二个问题需要进一步详细说明。
当使用移位添加算法将两个16位数相乘时,我遇到了麻烦,当得到的答案是32位数时,其中1为MSB。在这个阶段,我想采用这个答案的模型,但因为MIPS将其解释为负数,这给我带来了问题,因为我的mod运算符只能算出正数(应该这样)。
有没有办法可以强制MIPS将此数字解释为正数?有没有办法我可以调整移位添加乘法算法中的某个地方,这样我就不会得到如此大的答案,但答案仍然是一样的?
感谢您的帮助,
凸轮。