emu8086中的A到Z每行都有一个字母

时间:2017-03-14 15:04:08

标签: emu8086

#MAKE-COM#
 ORG 100H

 MOV CX, 26                   

 MOV AH, 2                   
 MOV DL, 65


 LP1:                       
   INT 21H                   

   INC DL                     
   DEC CX                     

 JNZ LP1                    

 MOV AH, 4CH                  
 INT 21H

这是我的代码,但我希望新行中的每一个字母应该怎样做?

2 个答案:

答案 0 :(得分:0)

正如@Michael Petch所说的那样,使用 10表示换行,13表示回车。

这是一个有效的例子:

#MAKE-COM#
 ORG 100H

 MOV CX, 26                   

 MOV BL, 65         
 MOV AH, 2 


 LP1:
   MOV DL, BL                
   INT 21H    

   MOV DL, 10  ; LINE FEED                     
   INT 21H 
   MOV DL, 13  ; CARRIAGE RETURN
   INT 21H     

   INC BL                     
   DEC CX                     

 JNZ LP1                    

 MOV AH, 4CH                  
 INT 21H

答案 1 :(得分:0)

此代码将在新行中打印 A-Z。查看注释以了解流程和代码。


.MODEL SMALL
.STACK 100H 
.DATA 

.CODE
    MOV CX, 26    ;Initial value of counter CX=26 for 26 Alphabets A to Z
    MOV BL, 41H   ;Initial value of BL=A ASCII-41H 
    
    MOV AH, 2
    
    OUTPUT:
    MOV DL, BL    ;Display current value of BL
    INT 21H 
    
    MOV AH, 2H
    MOV DL, 10    ;Print Newline
    INT 21H 
    MOV DL, 13    ;Print Carriage Return
    INT 21H
    
    INC BL        ;Incrementing value of BL, BL=BL+1
    
    LOOP OUTPUT   ;Looping OUTPUT label and in each iteration CX=CX-1
    
    EXIT:
    MOV AH, 4CH   ;Terminating Program
    INT 21H