[优质文档]设置光标的试验
DATA SEGMENT
WLUX DB 0
WLUY DB 0
WRDX DB 24
WRDY DB 79
CSTL DB 01 定义参数变量并赋初始值,具体含义见DOS调用的说明
CEDL DB 07
TSTL DB 04
TSTR DB 05
PG DB 0
DATA ENDS
STACK SEGMENT
STA DB 50 DUP(?)
TOP EQU LENGTH STA
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK 段寄存器和堆栈初始化
START: MOV AX,DATA
MOV DS,AX 段使用设定语句是伪指令,它不能设置段寄存器
MOV ES,AX 的值,只能通过指令语句给DS, ES、SS赋值,
MOV AX,STACK CS由系统自动赋值。堆栈指针寄存器SP赋值
MOV SS,AX
MOV SP,TOP ;
MOV AH,07H
MOV AL,00H ;清整个窗口为空白
MOV BH,07H ;属性为正常显示
MOV CH,WLUX
MOV CL,WLUY ;左上角坐标
MOV DH,WRDX
MOV DL,WRDY ;右下角坐标
INT 10H ;显示I/O
MOV CH,CSTL ;起始行
MOV CL,CEDL ;结束行
MOV AH,01H
INT 10H ;设置光标类型
MOV DH,TSTL ;光标起始行
MOV DL,TSTR ;光标起始列
MOV BH,PG ;当前显示页
MOV AH,02H
INT 10H ;设置光标位置
PPP: MOV AX,4C00H
INT 21H ;返回DOS 可去掉这两行,以看清楚设置的效果
CODE ENDS