data segment
szBufGO db 'hello world$'
Buffer db 40 dup (?)
data ends
code segment
assume cs:code,ds:data
start:
main Proc
mov ax,data
mov ds,ax
lea si,szBufGO
lea di,Buffer
call Strcpy
mov ah,4ch
int 21h
main endp
Strcpy Proc
push dx
push si
push di
mov dh,[si]
mov dl,ds:[di]
mov cx,39
std
rep movsb
lea dx,ds:[di]
mov ah,09h
int 21h
pop di
pop si
pop dx
ret
Strcpy endp
code ends
szBufGO db 'hello world$'
Buffer db 40 dup (?)
data ends
code segment
assume cs:code,ds:data
start:
main Proc
mov ax,data
mov ds,ax
lea si,szBufGO
lea di,Buffer
call Strcpy
mov ah,4ch
int 21h
main endp
Strcpy Proc
push dx
push si
push di
mov dh,[si]
mov dl,ds:[di]
mov cx,39
std
rep movsb
lea dx,ds:[di]
mov ah,09h
int 21h
pop di
pop si
pop dx
ret
Strcpy endp
code ends
end start
注释:
Strcpy函数
以bi作为目的,si作为源,以dx的值作为返回。