DATA SEGMENT
Msg1 db "Please input a string:",'$'
String DB 100,0,100 dup(?)
Msg2 db 0ah,0dh,"Please input a sub string:$"
Srcstr DB 100,0,100 dup(?)
Msg3 db 0ah,0dh,"Find:"
Result DW ?,'$'
DATA ENDS
STACK SEGMENT PARA STACK
DB 20H DUP(0)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK,ES:DATA,DS:DATA
start:MOV AX,DATA
MOV DS,AX
MOV ES,AX
lea dx,Msg1
mov ah,09h
int 21h
lea dx,String
mov ah,0ah
int 21h
xor bx,bx
mov bl,String+1
lea dx,Msg2
mov ah,09h
int 21h
lea dx,Srcstr
mov ah,0ah
int 21h
LEA SI,String+2
MOV AX,SI
LOP:LEA DI,Srcstr+2
xor cx,cx
MOV CL,Srcstr+1
CLD
REPZ CMPSB
JZ MAT
INC AX
MOV SI,AX
DEC BX
JNZ LOP
MOV Result,'N'
JMP EXIT
MAT:mov Result,'Y'
EXIT:lea dx,Msg3
mov ah,09h
int 21h
MOV AH,4CH
INT 21H
CODE ENDS
END start