汇编语言怎么实现一个字符串的输入与输出

2024-11-11 16:01:54
推荐回答(4个)
回答1:

汇编语言实现一个字符串的输入与输出,可以调用DOS功能中断完成。
示例程序如下:
;汇编语言输入一串字符串,可以调用DOS功能中断INT 21H的06H功能。
;程序功能:输入一串字符,以回车符结束,输入字符串最大长度200字符;
; 输入结束在下一行输出此字符串。
data segment
str db 201 dup (0dh)
data ends

code segment
assume cs:code,ds:data
main proc far
start:
mov ax,data
mov ds,ax
lea si,str
mov cx,200
inpstr: mov ah,06h
int 21h
jnz inpstr;无字符可读
mov [si],a1
inc si
xor al,0dh
jz endinp
loop inpstr

endinp: mov al,0dh
mov [si],a1

mov dl,0ah;回车换行
mov ah,02h
int 21h
mov dl,0dh
mov ah,02h
int 21h

lea si,str;输出字符串
output: mov dl,[si]
cmp dl,0dh
jz endout;已到字符串尾
mov ah,02h
int 21h
inc si
jmp output

endout: mov ah,4ch
int 21h
ret
main endp
code ends
end start

回答2:

输入:
DATA SEGMENT
BUFF DB 100
DB ?
DB 100 DUP(?)
DATA ENDS
MOV AX,DATA
MOV DS,AX
LEA DX,BUFF
MOV AH,0AH
INT 21H
输出:HELLO
MES DB 'HELLO $'
MOV AX,DATA
MOV DS,AX
LEA DX,MES
MOV AH,9
INT 21H

回答3:

用21号中断的10号功能输入。。9号功能输出。。

回答4:

mov ax 0Ah
int 21h
mov ax 09h
int 21h