weinan030416

导航

15*16输出全部字节

OUTPUT    MACRO    ASC        
    MOV    DL,ASC
    MOV AH,02H
    INT    21H
    ENDM                ;输出单字符
        
CODES SEGMENT
    ASSUME CS:CODES
MAIN    PROC    FAR   
START:
    MOV        DL,10H        ;用DL保存初始值10H
    MOV        BL,0FH        ;BL用作计数器保存行数
    
ROW:
    MOV        CX,10H        ;设置循环次数,表示输出为16列
LINE:
    MOV        AL,DL
    OUTPUT    AL
    PUSH    DX            ;由于用到DL进行输出,因此每次输出前都要入栈保存DX
    
      OUTPUT     0H
      OUTPUT    0H            ;显示两个空白字符便于显示
      
    POP        DX
    INC        DL            ;准备下一个值
    LOOP    LINE        ;准备显示当前行的下一个值
    
    PUSH    DX            ;完成一行的显示
    
    OUTPUT    0DH
    OUTPUT    0AH            ;回车换行
    
    POP        DX
    DEC        BL
    CMP        BL,0        ;判断是否已经输出15行
    JNE        ROW
    JE        EXIT
     
EXIT:
    MOV        AH,4CH
    INT        21H   

MAIN    ENDP

CODES ENDS
    END MAIN

 

posted on 2023-02-07 11:38  楠030416  阅读(12)  评论(0编辑  收藏  举报