第1个回答 2010-12-30
DATA SEGMENT
BUF DW 0FF37H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
LEA BX,BUF
MOV AX,[BX] ;要检测的数放入AX
MOV DH,16 ;检测的次数
MOV CX,0 ;CX寄存器清零
BEG:
ROL AX,1 ;循环左移
TEST AX,01H ;检测最低位是否为一
JZ NEXT ;为0则跳转NEXT
INC CL ;否则CL加一
NEXT:
DEC DH
JNZ BEG ;检测16次
MOV AH,4CH
INT 21H ;返回DOS
CODE ENDS
END START
测试过了,没问题。。