例5.2 统计字单元number中二进制数位值为1的个数,统计结果存放在变量one中。 统计1的个数,只能逐位进行测试。如果被测数据为0,则不必进行统计。否则可采用移位操作,判断移到CF标志中的结果来累计1的个数。使用左移指令,每移一位低位补0,所以测试数据变为0,就可结束统计。这是一个先判断,后执行的循环程序,而且循环次数是不定的。程序如动画所示。