汇编 设计查找匹配字符串SEARCH的程序。 10

问题要求:程序接收用户键入的一个关键字以及一个句子。如果句子中不包含关键字则显示’nomatch’;如果句子中包含关键字则显示‘match’,且把该字在句子中的位置用十六... 问题要求:
程序接收用户键入的一个关键字以及一个句子。如果句子中不包含关键字则显示’no match’;如果句子中包含关键字则显示‘match’,且把该字在句子中的位置用十六进制数显示出来,要求程序的执行过程如下:
enter keyword :abc
enter sentence :we are studying abc
match at location :11H of the sentence
enter sentence: xyz ,ok?
no match
enter sentence :^c
要源程序
展开
 我来答
yanty888
2013-06-28
知道答主
回答量:5
采纳率:0%
帮助的人:7970
展开全部
可以用的 望采纳

DATA SEGMENT
STRKEY DB 'enter keyword:$'
STRSEN DB 'enter sentence:$'
STRAT DB 'match at location:$'
STROF DB ' of the sentence',0DH,0AH,'$'
STRNO DB 'no match',0DH,0AH,'$'
CRLF DB 0DH,0AH,'$'
BUFKEY DB 20
DB 20 DUP (?)
BUFSEN DB 100
DB 100 DUP (?)
BUFCMP DB 20
DB 20 DUP (?)
DATA ENDS

STACK SEGMENT STACK
DB 200 DUP(?)
STACK ENDS

CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK
START:
MOV AX,DATA
MOV DS,AX
MOV ES,AX

MOV AH,09H
LEA DX,STRKEY
INT 21H

MOV AH,0AH
LEA DX,BUFKEY
INT 21H

MOV AH,09H
LEA DX,CRLF
INT 21H

LEA SI,BUFKEY+2
LOOP1:
MOV AH,09H
LEA DX,STRSEN
INT 21H

MOV AH,0AH
LEA DX,BUFSEN
INT 21H

MOV AH,09H
LEA DX,CRLF
INT 21H

MOV CL,BUFSEN+1
SUB CL,BUFKEY+1
JC NOMATCH

INC CL
LEA BX,BUFSEN+2
LOOP2:
PUSH CX
MOV CL,BUFKEY+1
MOV CH,0
PUSH SI
MOV SI,BX
MOV DI,OFFSET BUFCMP
REP MOVSB
POP SI
POP CX

PUSH CX
MOV CL,BUFKEY+1
MOV CH,0
PUSH SI
LEA SI,BUFCMP
LEA DI,BUFKEY+2
REPZ CMPSB
POP SI
POP CX
JZ MATCHAT

INC BX
DEC CL
JNZ LOOP2

JMP NOMATCH
MATCHAT:
MOV AH,09H
LEA DX,STRAT
INT 21H

SUB BX,OFFSET BUFSEN+2
INC BX

PUSH CX

MOV CL,4
MOV CH,4
NEXT:
ROL BX,CL
MOV AL,BL
AND AL,0FH
ADD AL,30H
CMP AL,3AH
JL OUTP
ADD AL,07H
OUTP:
MOV DL,AL
CMP DL,'0'
JZ ZJMP
MOV AH,02H
INT 21H
ZJMP:
DEC CH
CMP CH,0
JA NEXT
MOV DL,'H'
MOV AH,02H
INT 21H

POP CX

MOV AH,09H
LEA DX,STROF
INT 21H

JMP LOOP1
NOMATCH:
MOV AH,09H
LEA DX,STRNO
INT 21H

JMP LOOP1
EXIT:
MOV AH,4CH
INT 21H
CODE ENDS
END START
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kycs5mtp0
2011-06-15 · TA获得超过519个赞
知道小有建树答主
回答量:615
采纳率:0%
帮助的人:407万
展开全部

去百度找一下吧..最好是找一些相关的实例教程.!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式