我需要计算二进制数中 1 的数量,比如说 5,所以 00001001 将是 2 或 n=2。我正在使用 MIPS。最好的方法来做到这一点?
最好的方法是count them.
您可以检查是否设置了最低有效位(a1
) by and
用一个来代替它。如果你得到一个非零结果,它就被设置了,所以你应该增加一个计数器(当然最初初始化为零)。
您可以使用逻辑移位运算符将值的所有位右移。
您可以循环执行这两个操作,直到您的值最终为零。大多数体系结构中都有条件分支指令。
那么,您的任务就是找到 MIPS 的这些指令并将它们按正确的顺序排列:-)
不分先后,我将研究以下一组说明:{andi, srl, beq, addi}
,尽管您可能还需要其他一些。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)