Logo 
Search:

Unix / Linux / Ubuntu Forum

Ask Question   UnAnswered
Home » Forum » Unix / Linux / Ubuntu       RSS Feeds

please help - why this is not work (sub string in string)

  Asked By: Sahar    Date: Mar 28    Category: Unix / Linux / Ubuntu    Views: 3399
  

DATA SEGMENT
STR1 db "ENTER YOUR STRING HERE = $"
STR2 db 0ah,0dh,"ENTER THE SHORT STRING = $"
FOUND db 0ah,0dh,"FOUND STRING$"
NOTFOUND db 0ah,0dh,"NOT FOUND ANY STRING$"
M DB 15 DUP("$")
N DB 3 DUP("$")
MONE EQU 15
COUNT DB 1
DATA ENDS
sseg segment stack
dw 100h dup(?)
sseg ends

CODE SEGMENT
ASSUME DS:DATA,CS:CODE
START:

MOV AX,DATA
MOV DS,AX

LEA SI,M
LEA DI,N
MOV COUNT,0h

;----GET STRING
MOV AH,09H
LEA DX,STR1
INT 21H

MOV AH,0AH
MOV DX,SI
INT 21H

;----GET SHORT STRING
MOV AH,09
LEA DX,STR2
INT 21H

MOV AH,0AH
MOV DX,DI
INT 21H

mov ah,00
int 16h

;START TO CMP STRINGS
MOV CL,MONE
l1: MOV AX,M[SI]
MOV BX,N[DI]
CMP AX,BX
JE L2
JMP L3

;----EQUAL------------
L2: INC COUNT
CMP COUNT,3
JZ PRINTSTR
INC SI
INC DI
DEC CL
CMP CL,0
JNZ L1
JMP L4
;-------NOT EQUAL------
L3: MOV COUNT,0
INC AX
DEC CL,1
CMP CL,0
JNZ L1
JMP L4
;------PRINT THE STRING-----

PRINTSTR:MOV AH,09H
LEA DX,FOUND
INT 21H

MOV COUNT,0
INC SI
MOV BX,COUNT
DEC CL
JNZ L1
JMP L4

mov ah,00
int 16h

L4: MOV AH,09H
LEA DX,NOTFOUND
INT 21H

SOF:
MOV AH,4CH
INT 21H
CODE ENDS
END START

Share: 

 

1 Answer Found

 
Didn't find what you were looking for? Find more on please help - why this is not work (sub string in string) Or get search suggestion and latest updates.




Tagged: