标签: assembly mips
例如,如果我有$ t1:
abcd efgh 0000 0000
和$ t2:
0000 0000 ijkl mnop
其中一个字母可以是0或1。
如果我想要这个$ t0:
abcd efgh ijkl mnop
以下哪项更好?
add $t0, $t1, $t2 or $t0, $t1, $t2
注意:我知道寄存器是32位,但为了简单起见,假设它们是16位。
答案 0 :(得分:1)
尝试询问,"如果 重叠怎么办?"
现在可能没有,但是如果事情发生变化会有重叠怎么办?那么它应该表现为add还是or?
add
or
在相关的说明中,您对此有何意图?您是否尝试执行某些算术(使用add)?你在做逻辑操作(使用or)吗?你在组合旗帜(使用or)吗?选择最能表达您对代码的意图的那个。
答案 1 :(得分:0)
因此,在做了一些更多的研究之后,似乎有人使用OR而不是ADD。根据这些链接:1 2,ADD使用二进制补码运算,因此如果标记为a(在本例中为符号位)的位为1,则无效。