用汇编 处理字符串的比较和查找 显示结果 随便来一个初级的

 我来答
azmgd
2008-04-25 · TA获得超过346个赞
知道小有建树答主
回答量:553
采纳率:0%
帮助的人:472万
展开全部
比较
datarea segment
string1 db ''I am a teacher''
string2 db ''I am a student''
yes db ''MATCH$''
no db ''NO MATCH$''
datarea ends
code segment
main proc far
assume cs:code,ds:datarea,es:datarea
start:push ds
sub ax,ax
push ax
mov ax,datarea
mov ds,ax
mov es,ax
begin: lea si,string1
lea di,string2
mov cx,string2-string1
repe cmpsb
jne differ
lea dx,yes
mov ah,9
int 21h
ret
differ: lea dx,no
mov ah,9
int 21h
ret
main endp
code ends
end start
查找
汇编程序]查找匹配字符串(附源代码)

查找匹配字符串
1.题目:查找匹配字符串SEARCH
2.实验要求:
程序接收用户键入的一个关键字以及一个句子。如果句子中不包含关键字则显示‘No match!’;如果句子中包含关键字则显示‘Match’,并把该字在句子中的位置用十六进制数显示出来。要求程序的执行过程如下:
Enter keywoed:abc
Enter Sentence:We are studying abc.
Match at location:11 H of the sentence.
Enter Sentence:xyz,OK?
No match!
Enter Senterce:^C
3.提示:
程序可由三部分组成:
(1)输入关键字和一个句子,分别存入相应的缓冲区中,可用功能调用0AH。
(2)在句子中查找关键字。
(3)输出信息。
程序如下:
DATA SEGMENT
mess1 db 'Enter keyword:','$'
mess2 db 'Enter Sentence:','$'
mess3 db 'No match!',13,10,'$'
mess4 db 'Match at location:','$'
mess5 db 'H of the sentence.',13,10,'$'
change db 13,10,'$'
sen1 label byte
max1 db 14
act1 db ?
stokn1 db 14 dup(?)
sen2 label byte
max2 db 100
act2 db ?
stokn2 db 100 dup(?)
DATA ENDS

CODE SEGMENT
main proc far
assume cs:code,ds:data,es:data
START:
mov ax,data
mov ds,ax
mov es,ax
lea dx,mess1
mov ah,09h
int 21h
lea dx,sen1
mov ah,0ah
int 21h
lea dx,change
mov ah,09h
int 21h
sub cx,cx
a10:
lea dx,mess2
mov ah,09h
int 21h
lea dx,sen2
mov ah,0ah
int 21h
lea dx,change
mov ah,09h
int 21h
cmp act2,0
je exit
mov bx,0
a20:
mov cl,[act1]
lea si,stokn1
lea ax,stokn2
add al,bl
mov di,ax
cld
rep cmpsb
jz a30
inc bl
cmp bl,act2
je a40
jmp a20
a30:
lea dx,mess4
mov ah,09h
int 21h
mov ah,02h
add bl,1
mov cl,4
mov al,bl
rol al,cl
mov cl,2
jmp a50
a1:
lea dx,mess5
mov ah,09h
int 21h
jmp a10
a40:
lea dx,mess3
mov ah,09h
int 21h
jmp a10
a50:
dec cl
and al,0fh
cmp al,10
jnb a60
add al,'0'
a2:
mov dl,al
mov ah,02h
int 21h
cmp cl,0
je a1
mov al,bl
jmp a50
a60:
sub al,10
add al,'a'
jmp a2
exit:
ret
main endp
CODE ENDS
END START
百度网友e8baaf7
2008-04-18 · 超过25用户采纳过TA的回答
知道答主
回答量:212
采纳率:0%
帮助的人:108万
展开全部
去百度找一下吧..最好是找一些相关的实例教程.!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式