我有一个例外,它在屏幕上显示您输入的预定义文本。我做得对。该计划如下:
.model small
.stack
msg_len equ 37
.data
my_msg db "READ THE LETTERS: A, B, C, D, E, F, G"
.code
start:
mov ax, @data
mov ds, ax
mov cx, msg_len
mov ah, 02h
mov si, offset my_msg
prntchar:
mov dl, byte ptr[si]
int 21h
inc si
loop prntchar
mov ax, 4c00h
int 21h
mov dl, 0dh
int 21h
mov dl, 0ah
int 21h
end start
程序结束后我想更改行然后按一个字符。例如D,程序再次运行并在屏幕上显示相同的文本直到字母D.希望您了解我的需要。谢谢
答案 0 :(得分:0)
您可以查看this pdf。您可以在那里找到 DOS int 21h 及其功能代码的几个示例。
您正在寻找的内容将如下所示:
.data
char BYTE ?
.code
L1: mov ah,06h ; keyboard input
mov dl,0FFh ; don't wait for input
int 21h
jz L1 ; no character? repeat loop
; ...
我希望这会对你有所帮助。