04a.asm

来自「录音子程序 mov dx,offset news_2 显示放音提示」· 汇编 代码 · 共 76 行

ASM
76
字号
CODE SEGMENT
ASSUME CS:CODE
START PROC FAR
STT:PUSH DS
    SUB AX,AX
    PUSH AX
;==============================

    CLC
    MOV AX,0
    MOV DX,0

    MOV BX,000FH
    MOV CX,16
    
CHECK:
    SHL BX,1
    ADC DL,0
    CMP DL,1
    JZ COUNT
CONTINUE:
    LOOP CHECK

    JMP FINISH

COUNT:
    ADD AL,1
    DAA
    CLC
    MOV DX,0
    JMP CONTINUE
    
FINISH:

    MOV AH,0
    MOV BX,0
    MOV BL,AL            ;分离AL的高4位和低4位,分离后AL中为高4位,BL中为低4位
    AND AL,0F0H
    MOV CL,4
    SHR AL,CL
    AND BL,0FH

    
    CALL HEX2ASCII       ;调用HEX2ASCII
    CALL DISPLAY         ;调用DISPLAY子程序
    MOV AL,BL
    CALL HEX2ASCII
    CALL DISPLAY
    
;==============================
    RET
START ENDP

HEX2ASCII PROC NEAR
    CLC           ;16进制转ASCII子程序
    DAA
    ADD AL,0F0H
    ADC AL,40H
    RET
HEX2ASCII ENDP

DISPLAY PROC NEAR
    PUSH DX       ;显示结果子程序
    
    MOV DL,AL
    MOV AH,2
    INT 21H

    POP DX
    RET
DISPLAY ENDP

CODE ENDS
END STT

⌨️ 快捷键说明

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