第6章应用系统开发 PUSH DX MOV AH,6;屏幕上卷功能 MOV\AL, O MOV CH,0;左上角行号 MOV CL,0;左上角列 MOV DH,24;右下角行号 MOV DL, 79 ;右下角列号 MOV BH,7;卷入行属性 INT10H;调用显示属性 POP DX;恢复寄存器
第6章 应用系统开发 PUSH DX MOV AH,6;屏幕上卷功能 MOV AL,0 MOV CH,0;左上角行号 MOV CL,0 ;左上角列号 MOV DH,24 ;右下角行号 MOV DL,79 ;右下角列号 MOV BH,7;卷入行属性 INT 10H ;调用显示属性 POP DX ;恢复寄存器 上 一 页
第6章应用系统开发 POPCⅩ POPBⅩ POP、AX RET;返回主程序 CLEAR SCREEN ENDP MOVE SHAPE PROC NEAR PUSH AX 保护寄存器 PUSH BX PUSH CX PUSH DX PUSH DI
第6章 应用系统开发 POP CX POP BX POP AX RET ;返回主程序 CLEAR_SCREEN ENDP ; MOVE_SHAPE PROC NEAR PUSH AX ;保护寄存器 PUSH BX PUSH CX PUSH DX PUSH DI 上 一 页
第6章应用系统开发 MOV AH,OFH;取当前显示方式 INT 10H SUB CH,CH;清除讣数器CX的高字节 MOV CL,[D;L放循环次数 INC DI;D指向字符图形表中的第一个字符 MOV CHAR CNT,CX;保存循环次数 MOV POINTER, DI MOV LINE ON, Dh MOV COL ON, DL
第6章 应用系统开发 MOV AH,0FH ;取当前显示方式 INT 10H SUB CH,CH ;清除计数器CX的高字节 MOV CL,[DI] ;CL放循环次数 INC DI ;DI指向字符图形表中的第一个字符 MOV CHAR_CNT,CX ;保存循环次数 MOV POINTER,DI MOV LINE_ON,DH MOV COL_ON,DL 上 一 页
第6章应用系统开发 PLOT NEXT ADD DH,D+2]改变行列指针 ADD DL, [D+3 CMP DL,80;出屏否? JB MOV CRSR CALL ERASE POP DI POP DX POP C POP BX POP AX RET
第6章 应用系统开发 PLOT_NEXT: ADD DH,[DI+2] ;改变行列指针 ADD DL,[DI+3] CMP DL,80 ;出屏否? JB MOV_CRSR CALL ERASE POP DI POP DX POP CX POP BX POP AX RET 上 一 页
第6章应用系统开发 MOV CRSR: MOV AH,2;移动光标位置 10H MOV AL, DI MOV BL, [DI+11 取字符值及属性 PUSH CX MOV CX, 1 MOV AH,09;显示字符 OH POPCⅩ ADD DI,4;D指向下一个字符 LOOP PLOT NEXT CALL DLY QRTR;调用延时子程序
第6章 应用系统开发 MOV_CRSR: MOV AH,2 ;移动光标位置 INT 10H MOV AL, [DI] MOV BL,[DI+1] ;取字符值及属性 PUSH CX MOV CX,1 MOV AH,09;显示字符 INT 10H POP CX ADD DI,4 ;DI指向下一个字符 LOOP PLOT_NEXT CALL DLY_QRTR ;调用延时子程序