Copyright ©2009 by Pearson Education, Inc.
Upper Saddle River, New Jersey 07458 • All rights reserved.
The Intel Microprocessors:
8086/8088, 80186/80188, 80286, 80386, 80486 Pentium,
Pentium Pro Processor, Pentium II, Pentium, 4, and Core2 with 64-bit Extensions
Architecture, Programming, and Interfacing,
Eighth Edition
Barry B. Brey
DATSEG segment
DATA1 DB '123485559BCDEFGHIJK'
MESSAGE1 DB 'FOUND','$'
MESSAGE2 DB 'NOT FOUND','$'
DATSEG ENDS
CODE_SEGSEGMENT
ASSUME CS:CODE_SEG, DS:DATSEG
MAIN PROC FAR
MOV AX, DATSEG
MOV ES, AX
MOV DS, AX
MOV AH, 01; Option 01 inputs one character
INT 21H ; After this in terrupt, AL=input character
MOV CX,19
MOV SI,offset DATA1
GO: MOV BL ,[SI]
INC SI
CMP AL,BL
LOOPNE GO
JE FOUND ;ZF=1
MOV DX, Offset MESSAGE2
JMP NOTFOUND
;---------------------
FOUND: MOV DX, Offset MESSAGE1
NOTFOUND: MOV AH,09
INT 21H
MAIN ENDP
CODE_SEGENDS
END MAIN
EXAMPLE: