📄 shiyan32.asm
字号:
.386
DATA SEGMENT USE16
A DB 14 DUP(0)
STR1 DB 'NOT FIND THE NAME YOU INPUT',0DH,0AH,'$'
STR2 DB 'PLEASE INPUT NAME:',0DH,0AH,'$'
STR3 DB 80
DB 0
DB 80 DUP(0)
STR4 DB 'NAME PHONE NUMBER',0DH,0AH,'$'
BUF1 DB 'AAAAA 55555555',0DH,0AH,0DH,0AH,'$'
BUF2 DB 'BBBBB 11111111',0DH,0AH,0DH,0AH,'$'
BUF3 DB 'CCCCC 88888888',0DH,0AH,0DH,0AH,'$'
BUF4 DB 'DDDDD 77777777',0DH,0AH,0DH,0AH,'$'
BUF5 DB 'EEEEE 66666666',0DH,0AH,0DH,0AH,'$'
N =$-BUF5
DATA ENDS
STACK SEGMENT USE16 STACK
DB 200 DUP(0)
STACK ENDS
CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
BEGIN:MOV AX,DATA
MOV DS,AX
MOV ES,AX
LEA DX,STR2
MOV AH,9
INT 21H
LEA DX,STR3
MOV AH,10
INT 21H
MOV AL,STR3+1
CMP AL,5
JNE EXIT
CALL SEARCH
LEA DX,STR4
MOV AH,9
INT 21H
LEA DI,A
MOV AX,DI
CALL DISPLAY
JMP EXIT
SEARCH PROC NEAR
PUSH CX
PUSH DI
PUSH SI
XOR CX,CX
LEA DI,STR3+2
LEA SI,BUF1
MOV CX,5
REPZ CMPSB
MOV CX,N
JE L1
LEA DI,STR3+2
LEA SI,BUF2
MOV CX,5
REPZ CMPSB
MOV CX,N
JE L2
LEA DI,STR3+2
LEA SI,BUF3
MOV CX,5
REPZ CMPSB
MOV CX,N
JE L3
LEA DI,STR3+2
LEA SI,BUF4
MOV CX,5
REPZ CMPSB
MOV CX,N
JE L4
LEA DI,STR3+2
LEA SI,BUF5
MOV CX,5
REPZ CMPSB
MOV CX,N
JE L5
JMP L6
L1: LEA SI,BUF1
LEA DI,A
CLD
REP MOVSB
JMP L7
L2: LEA SI,BUF2
LEA DI,A
CLD
REP MOVSB
JMP L7
L3: LEA SI,BUF3
LEA DI,A
CLD
REP MOVSB
JMP L7
L4: LEA SI,BUF4
LEA DI,A
CLD
REP MOVSB
JMP L7
L5: LEA SI,BUF5
LEA DI,A
CLD
REP MOVSB
JMP L7
L6: LEA SI,STR1
LEA DI,A
CLD
REP MOVSB
JMP L7
L7: POP SI
POP DI
POP CX
RET
SEARCH ENDP
DISPLAY PROC NEAR
PUSH DX
LOP1:MOV DX,AX
MOV AH,9
INT 21H
POP DX
RET
DISPLAY ENDP
EXIT:MOV AH,4CH
INT 21H
CODE ENDS
END BEGIN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -