目录 上一页 下一页 下一章

第9章 图形显示 -243-



exit:





main

disp





loop2:






loop3:






next_dot:








pop
loop

mov
int

mov
int
endp

proc
push
push
mov
mov
mov

push
mov
mov

lodsw
xchg

shl
push
jnc
mov
mov
int

inc
pop
dec
jnz

inc
pop
loop
cx
loop1

ax,0003h
10h

ah,4ch
21h


near
bx
si
cx,16
si,offset buffer
dx,100

cx
cx,152
di,16


ah,al

ax,1
ax
next_dot
ah,0ch
al,2
10h

cx
ax
di
loop3

dx
cx
loop2
;恢复CX中的计数值
;转LOOP1继续

;设置字符显示模式3


;结束进程



;DISP子过程
;保存寄存器

;处理32个字节(16个字)
;SI寄存器指向文件缓冲区
;汉字左上角的Y坐标送入DX寄存器

;暂存CX寄存器中的计数值
;汉字左上角的X坐标送入CX寄存器
;处理一个字的16个Bit

;取得一个字的数据
;交换高低字节

;数据左移1位,最高位移入CF标志
;保存移位后的结果
;若移出的位是0,转NEXT_DOT
;画一个洋红色的点



;X坐标加1,准备处理下一个点
;恢复移位后的结果
;16个Bit处理完了吗?
;若未处理完16个Bit,转LOOP3继续

;Y坐标加1,准备处理下一条线
;恢复CX寄存器中的计数值
;转LOOP2继续

Copyright © 2004-2015 Reanimator www.cookmoon.org

目录 上一页 下一页 下一章