单个字符输入
mov ah,1
int 21h
- 功能:从键盘输入一个字符并将该字符的ASCII码送入AL中
单个字符输出
mov dl,'字符'
mov ah,2
int 21h
输入字符后回显
mov ah,1
int 21h
mov dl,al
mov ah,2
int 21h
字符串输入
DS:DX = 字节缓冲区的首地址
mov ah,0ah
int 21h
- 功能:从键盘输入一串字符到缓冲区,用“回车”结束输入。若输入字母超过缓冲区容纳的个数,则系统忽略此字符并响铃警告
- 说明:缓冲区的第一个字节单元为允许输入的最大字节数,第2个单元为实际键入字符的个数(由系统自动填入),从第3个单元开始存放键入的字符
- 例:
;前提:提前设置缓冲区
;然后在使用时将缓冲区的偏移地址放在DS:DX中
BUFFER DB 10,?,10 DUP(?)
...
MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET BUFFER
MOV AH,10
INT 21H
… |
10 |
5 |
48 |
65 |
6c |
6c |
6f |
0d |
… |
显示字符串
mov ah,09h
ds:dx = 字符串地址
int 21h
- 功能:显示一个以“$”结尾的ASCII码字符串
- 例:
DISPLAY DB 'Very Good!','$'
...
MOV AX,DATA
MOV DS,AX
LEA DX,DISPLAY
MOV AH,9
INT 21H
换行
data segment
enter 0ah,0dh,'$'
data ends
code segment
assume cs:code,ds:data
start:
lea dx,enter
mov ah,9
int 21h
mov ah,4ch
int 21h
code ends
end start
换行:
mov ah,2
mov dl,10
int 21h
回车:
mov ah,2
mov dl,13
int 21h