stksg segment stack
db 32 dup("stack")
stksg ends
datasg segment para 'data'
mg1 db 'Enter your name : ',"$"
mg2 db 'your name is : ' ,"$"
stl label byte
max db 20
len db ?
buffer db 20 dup(' ')
stdaler db '$'
datasg ends
codesg segment para 'code'
main proc far
assume ds:datasg, cs:codesg, ss:stksg
mov ax,datasg
mov ds,ax
;****************clear******************
mov ah,6h
mov al,25
mov ch,0
mov cl,0
mov dh,24
mov dl,79
mov bh,7
int 10h
;******* mov******************
mov ah,2h
mov dh,10
mov dl,30
mov bh,0
int 10h
;***************msg*********
lea dx,mg1
mov ah,9h
int 21h
mov ah,0ah
lea dx,stl
int 21h
;******* mov******************
mov ah,2h
mov dh,12
mov dl,30
mov bh,0
int 10h
;***************msg*********
mov dx,offset mg2
mov ah,9h
int 21h
lea dx,buffer
mov ah,9h
int 21h
mov ax,4c00h
int 21h
main endp
codesg ends
end main