Binary 计算1';数字的二进制表示形式中的。(MIPS)

Binary 计算1';数字的二进制表示形式中的。(MIPS),binary,mips,Binary,Mips,我需要计算二进制数中1的个数,比如说5,所以00001001应该是2或者n=2。我正在使用MIPS。最好的方法是什么 最好的方法是数一数 您可以通过检查是否设置了最低有效位(a1),并将其与一个进行比较。如果你得到一个非零的结果,它就被设置了,所以你应该增加一个计数器(当然最初初始化为零) 您可以使用逻辑移位运算符将值的所有位向右移位 您可以循环执行这两个操作,直到值最终为零。大多数体系结构中都有条件分支指令 那么,您的任务就是找到MIPS的说明,并按正确的顺序排列:-) 在没有特定顺序的情况下

我需要计算二进制数中1的个数,比如说5,所以00001001应该是2或者n=2。我正在使用MIPS。最好的方法是什么

最好的方法是数一数

您可以通过
检查是否设置了最低有效位(a
1
),并将其与一个进行比较。如果你得到一个非零的结果,它就被设置了,所以你应该增加一个计数器(当然最初初始化为零)

您可以使用逻辑移位运算符将值的所有位向右移位

您可以循环执行这两个操作,直到值最终为零。大多数体系结构中都有条件分支指令

那么,您的任务就是找到MIPS的说明,并按正确的顺序排列:-)


在没有特定顺序的情况下,我将研究以下指令集:
{andi,srl,beq,addi}
,尽管您可能还需要一些其他指令。

您使用的是MIPS汇编语言吗?