循环16遍,逐次判断某位是1是0,加入到CL。
CODE SEGMENT
ASSUME CS:CODE
START: MOV CL,0 ;循环初始化
MOV AX,0FF37H
;循环对‘1‘的个数计数
REPEAT:TEST AX,OFFFFH ;Y=0?
JZ EXIT
JNS SHIFT ;正数则转移
INC CL ;负数则计数
SHIFT:SHL AX,1
JMP REPEAT
;结束程序返回操作系统
EXIT:MOV AX,4C00H
INT 21H
CODE ENDS
END START