目录 上一页 下一页 下一章

-134- PC机汇编语言实战精解

main

msg
start:




loop1:















main
code

proc
jmp
db
mov
mov
int

mov

push
mov
mov
mov
mov
mov
int

mov
int

pop
loop

int
endp
ends
end
far
short start
'Press any key...',0dh,24h
ah,09h
dx,offset msg
21h

cx,25

cx
cx,0
dx,194fh
bh,2
ah,6
al,1
10h

ah,0
16h

cx
loop1

20h


main



;显示字符串MSG



;设置循环计数

;暂存CX寄存器中的循环计数
;设置滚动窗口的左上角为(0,0)
;设置滚动窗口的右下角为(79,25)
;设置新行的属性
;选择10H中断的06功能
;准备将窗口中的内容向上滚动1行
;滚动窗口内容

;等待键盘输入


;恢复CX寄存器中的循环计数
;继续滚动窗口

;结束进程



  运行这个程序,刚刚设想的第(1)、(3)点都可得到验证。下面这个程序使用了07H功能,而且可以验证我们设想的第(2)点:
code


main

msg
start:




loop1:









segment
assume
org
proc
jmp
db
mov
mov
int

mov

mov
int

mov
mov
mov
mov
mov
int

cs:code,ds:code
100h
far
short start
'Press any key...',0dh,24h
ah,09h
dx,offset msg
21h

bl,4

ah,0
16h

cx,0
dx,194fh
bh,2
al,bl
ah,7
10h




;跳过数据区

;显示字符串MSG



;设置循环计数

;等待键盘输入


;设置窗口的左上角为(0,0)
;设置窗口的右下角为(79,25)
;设置插入行的属性
;以循环计数作为滚动的行数
;选择10H中断的07功能
;向下滚动窗口

Copyright © 2004-2015 Reanimator www.cookmoon.org

目录 上一页 下一页 下一章