首页 > 解决方案 > MIPS汇编中2个二进制数之间的位差

问题描述

所以我必须创建一个 MIPS 汇编程序,从 2 个寄存器($s0 和 $s1)中读取 2 个数字,并计算这 2 个数字不同的位数。并将结果存储在 $s2 寄存器中。我还必须用尽可能少的命令来完成上述所有操作。我在纸上用异或运算尝试了一些东西,但我不太清楚如何计算不同位的数量。

如果有人可以提供帮助,我们非常欢迎您。提前致谢

标签: assemblymipssmips

解决方案


对这些位进行异或运算,然后计算结果数中的位数。为此,您可以遍历每个位,检查它是否已设置(通过使用位掩码和位移位),然后增加一个计数器。

我故意把这个模糊不清,因为这是让你弄清楚的。


推荐阅读