为什么这个程序一运行其他程序也不能在显示器上输出了呢?(有关 mov ah,2h int 21h的问题),在线等待
我首先运行了一个没有问题的在CRT上输出的程序1,一切正常;然后我运行了以下的程序2,没有输出成功;我再运行前面的程序1,就不能输出了。请问这是什么问题?我重起以后,程序1就可以输出了。
这个程序段是为了能够在显示器上面以十进制输出AX里面的数的程序段
MOV BX,0 ;BX为标志,现实最高位是否已经输出过
CWD
MOV CX,10000
DIV CX
CMP AL,0
JE SL1
MOV BX,1
MOV DL,AL
ADD DL,30H
MOV AH,2
INT 21H
SL1: MOV AX,DX
CWD
MOV CX,1000
DIV CX
CMP BX ,0
JNE OK1
CMP AL,0
JE SL2
OK1: MOV BX,1
MOV DL,AL
ADD DL,30H
MOV AH,2
INT 21H
SL2: MOV AX,DX
CWD
MOV CX,100
DIV CX
CMP BX,0
JNE OK2
CMP AL,0
JE SL3
OK2: MOV BX,1
MOV DL,AL
ADD DL,30H
MOV AH,2
INT 21H
SL3: MOV AX,DX
CWD
MOV CX,10
DIV CX
CMP BX,0
JNE OK3
CMP AL,0
JE SL4
OK3: MOV BX,1
MOV DL,AL
ADD DL,30H
mov dl,'a'
MOV AH,2
INT 21H
SL4: ADD DL,30H
mov dl,'a'
MOV AH,2
INT 21H
ret
请问是不是在dos里面改了什么,使得CRT都不能输出了吗?