从一个数字中提取四位并插入到MIPS中的另一个数字中

问题描述

写最短的MIPS指令序列,提取四位 从寄存器$s1的第18位到第15位,并使用该字段的值替换了寄存器中的第12位至第9位 寄存器$s2,而无需更改寄存器$s2的其他位。

到目前为止,我想到了:

srl $s1,$s1,15 #remove bits 0 to 14
sll $s1,28 #remove bits 31 to 19
andi $t0,$s2,0 # setting register $t0 to 0
srl $t0,$t0,13 # remove bits 0 to 13
sll $t0,$21,13 # adds $s1,to $t0
or $s2,$t0 # replaces bits

我知道这是错误的,但是我找不到解决此问题的有效方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)