簡體   English   中英

使用DOSBOX以匯編語言使用循環

[英]Using loop in assembly language using DOSBOX

您好我需要顯示這樣的輸出

9_8_7_6_5_4_3_2_1_0

但是我很難臨時存儲“下划線”,並且我注意到諸如DH,CH,BH,BL之類的寄存器不能用於使用int int 21H進行輸出。 這是我的代碼

.model small
.stack
.data
.code

begin:
   mov ah, 2
   mov cx, 10
   mov dl, 39h
   int 21h
back: mov dl, 5fh
   int 21h
   sub dl, 39
   int 21h
   loop back    
   mov ah,4ch
   int 21h
end begin

您可以使用另一個寄存器來存儲計數器(9..0),例如bl

.model small
.stack
.data
.code

begin:
   mov ah, 2
   mov cx, 10
   mov bl, '9'     ;◄■■ COUNTER 9..0.
back:
   mov dl, bl      ;◄■■ MOVE COUNTER INTO DL.
   int 21h         ;◄■■ DISPLAY COUNTER.
   dec bl          ;◄■■ COUNTER-1.
   mov dl, 5fh     ;◄■■ MOVE UNDERSCORE INTO DL.
   int 21h         ;◄■■ DISPLAY UNDERSCORE.
   loop back    
   mov ah,4ch
   int 21h
end begin

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM