qwin.asm
来自「一些小程序,关于汇编语言中程序的中断的使用,例子中包括字符输出」· 汇编 代码 · 共 72 行
ASM
72 行
;要求:显示以*为边界的窗口,输入n=0~6,向上滚动n行;左上角*号坐标:(1,1),右下角*号坐标:(9,10)
.model small
.stack 200
.data
dat db '0'
outbuf db 0dh,0ah
db 'Please input number(0~6);$'
.code
.startup
mov ah,0
mov al,2
int 10h
;mov ah,15
;int 10h
mov si,bx
mov ah,2
mov dx,0101h
int 10h
mov ah,9
mov al,'*'
mov bl,7
mov cx,10
int 10h
a1: inc dh
mov al,'*'
mov cx,1
call play
inc dl
mov al,dat
mov cx,8
call play
mov dl,10
mov al,'*'
mov cx,1
call play
inc dat
mov dl,1
cmp dat,'6'
jbe a1
inc dh
mov al,'*'
mov cx,10
call play
call innum
mov ah,6
mov bh,7
mov cx,0202h
mov dx,0809h
int 10h
.exit 0
play proc
mov bx,si
push ax
mov ah,2
int 10h
pop ax
mov ah,10
int 10h
ret
play endp
innum proc
mov ah,9
lea dx,outbuf
int 21h
mov ah,1
int 21h
sub al,30h
ret
innum endp
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?