今天写汇编程序遇到了一个问题
源程序如下:
drawstart MACRO
MOV AX,4F02H;
MOV BX,100H;
INT 10H;
ENDM
drawpixel MACRO x,y
MOV CX,x;
MOV DX,y;
MOV AL,09H;
MOV AH,0CH;
INT 10H;
MOV CX,100;
MOV DX,101;
MOV AL,09H;
MOV AH,0CH;
INT 10H;
ENDM
宏的功能是画两个像素点,坐标分别是(x,y)与(100,101)
宏调用如下:
INCLUDE PICTURE.lib
DATA SEGMENT
DATA ENDS
STACK SEGMENT
STACK ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE,SS:STACK
START:
drawstart;
drawpixel 100,100;
CODE ENDS;
END START
运行结果:失败了
但是修改宏如下,去掉了宏体中第二次画像素点的MOV AH,0CH
MOV CX,100;
MOV DX,101;
MOV AL,09H;
INT 10H;
运行结果:成功
求解为什么去掉了MOV AH,0CH就可以了。