assume cs:code, ds:data, ss:stack
data segment
pkey db 'please input strings ','$'
InStr db 20 dup(0)
InCount db 0
temp dw 0
data ends
stack segment
dw 100 dup(0)
stack ends
code segment
start:
mov ax, data
mov ds, ax
mov ax, stack
mov ss, ax
mov dx, offset pkey
mov ah, 9
int 21h
call backEnter
call inputStr
call backEnter
call outputStr
exit:
mov ah, 4ch
int 21h
;==========函数调用=============
backEnter proc near
mov dl, 0ah ;回车换行
mov ah, 2
int 21h
mov dl, 0dh
mov ah, 2
int 21h
ret
backEnter ENDP
;==========输入字符串==========
inputStr proc near
push BX
LEA BX,InStr
inloop:
MOV AH,1 ;输入字符串
INT 21H
CMP AL,'$'
JZ inOver
MOV [BX], AL
INC BX
INC InCount
JMP inloop
inOver:
pop BX
ret
inputStr ENDP
;==========输出字符串==========
outputStr proc near
push SI
push CX
lea SI, InStr ;InStr 指向 将要输出的字符串
mov CX, InCount
outloop:
mov DL,[SI]
mov AH, 2
int 21H
inc SI
loop outloop
pop CX
pop SI
ret
outputStr ENDP
;==========函数调用=============
code ends
end start
汇编_输出字符串
最新推荐文章于 2023-10-29 16:15:13 发布