exe12.asm

来自「一个简单适用的响铃程序,在WINDOWS下的DOS环境里也可以区分出响铃的次数.」· 汇编 代码 · 共 33 行

ASM
33
字号
CODE SEGMENT
       ASSUME CS:CODE
START: MOV AH,01H            ;调用1号字符输入功能
       INT 21H
      CMP AL,30H             ;个位数下限设置
      JBE ENDD
      CMP AL,39H             ;个位数上限设置
      JA ENDD 
      SUB AL,30H             ;将ASCII码进行转换
      MOV CL,AL
 LOOPER: MOV DL,07H          ;置入口参数
        MOV AH,02H
        INT 21H              ;调用单字符显示功能
CALL DELAY1                  ;调用延时子程序
      LOOP LOOPER            
ENDD: MOV AH,4CH
        INT 21H
 DELAY1 PROC               ;子程序
     PUSH CX               ;保护CX值
     MOV BX,50000          ;在程序编写过程中,由于发现采用一次空循环也不能达到区分连续响铃
    DEL:                   ;的目的,在此处采用嵌套循环以使延时能够将连续的响铃区分
        MOV CX,10000
    DE:  LOOP DE
     DEC BX 
    JNZ DEL 
    POP CX                  ;还原CX值
   RET 
 DELAY1 ENDP
CODE ENDS
    END START
       
       
       

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?