首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Emu8086星号字符同时显示?

Emu8086星号字符同时显示?
EN

Stack Overflow用户
提问于 2014-10-13 00:27:59
回答 1查看 2.8K关注 0票数 0

我一直在写我的代码,我只是想问一下,我如何才能同时按行显示星号?我做了一个星号三角形,例如第一行"*“第二行”*“这是我要理解的代码。

代码语言:javascript
复制
org     100h   



mov     ax, 3
int     10h

mov     ax, 1003h
mov     bx, 0      
int     10h




mov     dl, 0   
mov     dh, 0   

mov     bl, 0   

jmp     next_char

next_row:
inc     dh
cmp     dh, 16
je      stop_print
mov     dl, 0

next_char:


mov     ah, 02h
int     10h




mov     bh, 0
mov     cx, 7
mov     ah, 09h
int     10h

inc     bl      ; next attributes.





; set cursor at (dl,dh):
mov     dl, 0  ; column.
mov     dh, 0   ; row.
mov     ah, 02h
int     10h        




mov dl, 10 
int 21h    
mov dl, ' ' 
int 21h    
mov dl, ' ' 
int 21h   
mov dl, ' ' 
int 21h    
mov dl, ' ' 
int 21h  
mov dl, '*' 
int 21h

mov dl, 08  
int 21h
mov dl, 08 
int 21h
mov dl, 13 
int 21h
mov dl, 00 
int 21h    

mov dl, 10        ;new line
int 21h   
mov dl, ' ' 
int 21h    
mov dl, ' ' 
int 21h 
mov dl, '*' 
int 21h
mov dl, '*'
int 21h
mov dl, '*' 
int 21h
mov dl, 08  
int 21h
mov dl, 08 
int 21h
mov dl, 13 
int 21h
mov dl, 00 
int 21h    

mov dl, 10        ;new line
int 21h    
mov dl, ' ' 
int 21h    
mov dl, '*' 
int 21h
mov dl, '*'
int 21h
mov dl, '*' 
int 21h    
mov dl, '*' 
int 21h
mov dl, '*' 
int 21h
mov dl, 08  
int 21h
mov dl, 08 
int 21h
mov dl, 13 
int 21h
mov dl, 00 
int 21h  

mov dl, 10        ;new line
int 21h    
mov dl, '*' 
int 21h
mov dl, '*'
int 21h
mov dl, '*' 
int 21h    
mov dl, '*' 
int 21h
mov dl, '*' 
int 21h   
mov dl, '*' 
int 21h 
mov dl, '*' 
int 21h
mov dl, 08  
int 21h
mov dl, 08 
int 21h
mov dl, 13 
int 21h
mov dl, 00 
int 21h    








;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mov     dl, 1  ; * column position.
mov     dh, 1   ;  row position.
mov     ah, 02h
int     10h     


mov     bh, 0
mov     cx, 6
mov     ah, 09h
int     10h

inc     bl    


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;                                      
mov     dl, 1  ; *** column position.
mov     dh, 2  ; row position.
mov     ah, 02h
int     10h     


mov     bh, 0
mov     cx, 6
mov     ah, 09h
int     10h

inc     bl      

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

mov     dl, 1  ; ***** column position.
mov     dh, 3   ; row position.
mov     ah, 02h
int     10h     


mov     bh, 0
mov     cx, 6
mov     ah, 09h
int     10h

inc     bl 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  


mov     dl, 1  ; ******* column position.
mov     dh, 4   ; row position.
mov     ah, 02h
int     10h     


mov     bh, 0
mov     cx, 7      ;
mov     ah, 09h
int     10h

inc     bl    




je      next_row
jmp     next_char

stop_print:


mov     dl, 10  ; column.
mov     dh, 5   ; row.
mov     ah, 02h
int     10h




mov ah, 0
int 16h


ret
EN

回答 1

Stack Overflow用户

发布于 2014-10-13 03:54:52

我猜你是在要求简化这个序列

代码语言:javascript
复制
mov dl, '*' 
int 21h
mov dl, '*'
int 21h
mov dl, '*' 
int 21h    
mov dl, '*' 
int 21h
mov dl, '*' 
int 21h   
mov dl, '*' 
int 21h 
mov dl, '*' 
int 21h

一个简单的循环就可以完成这项工作

代码语言:javascript
复制
push cx
mov cx,7
again:
mov dl,'*'
int 21h
loop again
pop cx
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26327324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档