先确定一点,你的意思是统计字符2进制数中0的个数吧。
假定字符在al中,个数最终放在bx中
debug
-a
0742:0100 mov al, 23 ;字符=23H
0742:0102 mov bx, 0 ;个数
0742:0105 mov cx, 7 ;循环7次,因为第一次判断不用循环
0742:0108 test al,1 ;判断al的最低位是不是1,记住本句地址0108,为循环开始
0742:010A jnz 010D ;因为jnz占2字节 与下一句inc bx占1字节,所以共占3个字节
0742:010C inc bx
0742:010D rol al,1
0742:010F loop 0108 ;0108,即为上面循环开始的位置
然后可以执行了。 0010 0011,执行结果,(bx)应该=5