01.asm
来自「查找字符串 TABLE DB "ABCDEFGHIKLMNOPQRSTUVWYZ」· 汇编 代码 · 共 97 行
ASM
97 行
DATA SEGMENT
TABLE DB "ABCDEFGHIKLMNOPQRSTUVWYZ"
STR1 DB "Please enter a string:",0DH,0AH,"$"
STR2 DB "Wrong! The string is too long!"$"
STR3 DB "No!$"
STR4 DB "Ok!$"
BUFFER DB 40
DB ?
DB 40 DUP(?)
TAB_LEN EQU 26
DATA ENDS
STACK SEGMENT STACK
DB 100 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
SEARCH PROC FAR
START: PUSH DS
MOV AX,0
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV ES,AX
LWA DX,STR1
MOV AH,09
INT 21H
LEA DX,STR1
MOV AH,09
INT 21H
LEA DX,0AH
INT 21H
MOV SI,DX
INC SI
MOV BL,[SI]
MOV BH,0
INC SI
LEA DI,TABLE
MOV CX,TAB_LEN
CMP CX,BX
JNC GOON
LEA DX,STR2
JMP EXIT
GOON CLD
MOV AL,[SI]S
CAN; REPNZ SCASB
JZ MATCH
ERROR: LEA DX,STRB
JMP EXIT
MATCH: INC CX
CMP CX,BX
JC ERROR
PUSH CX
PUSH SI
PUSH DI
MOV CX,BX
DEC DI
REPZ CMPSB
POP SI
POP CX
JZ FOUND
JCXZ ERROR
JMP SCAN
FOUND: DEC DI
LDA DX,STR4
EXIT: MOV AH,09
INT 21H
RET
SEARCH ENDP
CODE ENDS
END START
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?