• 统计寄存器AX中1 的个数


     1 ;====================================
     2 ; 统计寄存器AX中1 的个数
     3 DATAS segment
     4 
     5 DATAS ends
     6 
     7 CODES segment
     8 START:
     9     mov AX,DATAS
    10     mov DS,AX
    11     ;正式代码部分
    12     mov  AX,1001111011B ;2进制数7个1
    13     mov  CX,0   ;CX置为0
    14     mov  CH,16  ;记录当前操作的第几位数字
    15 NEXT:
    16     test AX,0001H;让...0001与AX进行 与 运算
    17     JZ isZero   ;如果为0继续循环判断下一个
    18     inc  CL     ;自增1
    19 
    20 isZero:
    21     dec  CH     ;高位-1
    22     JZ   EXIT   ;if(CH=0)则跳转到EXIT
    23     SHR  AX,1   ;逻辑右移1位
    24     JMP  NEXT
    25 EXIT:
    26     count db ?,'$';向屏幕打印输出结果
    27     add cl,30H
    28     mov count,cl
    29     Lea dx,count
    30     mov AH,09   ;09号功能调用
    31     INT  21H    
    32 
    33     mov  AL,0   ;置退出码
    34     mov  AH,4CH ;置功能调用号
    35     INT  21H    ;软中断指令:实施功能调用
    36 CODES ends
    37     end START
  • 相关阅读:
    kafka学习(八)
    kafka学习(七)
    kafka学习(六)
    kafka学习(五)
    kafka学习(四)
    kafka学习(三)
    kafka学习(二)
    kafak学习(一)
    ssh远程登录
    pycharm
  • 原文地址:https://www.cnblogs.com/roseAT/p/10239601.html
Copyright © 2020-2023  润新知