大家帮我看看这个汇编程序那个地方错了啊?

实现:匹配源串(si)‘howareyou?’中的子串(di)'are'字符串。用si存储源串,di存储子串。.modelsmall.stack.datasourcedb... 实现:匹配源串(si)‘how are you?’中的子串(di)'are'字符串。用si存储源串,di存储子串。
.model small
.stack
.data
source db 'How are you?'
source_len equ $-source;源串长度
target db 'are'
target_len equ $-target;子串长度
success db 'success$'
error db 'error$'
.code
.startup
mov ax,@data
mov ds,ax
mov ax,@data
mov es,ax;一定要初始化es!!!!
lea si,source
lea di,target
mov bx,source_len-target_len+1 ;设置循环的次数
push di ;把di压栈保存,因为每次比较都从子串的第一个字符开始比较
cld ;正向进行比较
compare:mov cx,target_len ;设置比较的次数
push si ;把si压栈保存,防止si改变
repz cmpsb ;循环比较
je show ;若要跳转,则比较的结果为0,既是ZF=1时才执行跳转于show中输出匹配成功的标志
pop si ;若匹配不成功,则恢复si的值
inc si ;使si指向原串的下一个字符
pop di ;恢复di
dec bx ;循环次数减1
jne compare ;当bx!=0的时候,继续循环
mov dx,offset error ;如果循环完成之后仍然没有找到,则输出错误信息
mov ah,9
int 21h
jmp final
show:mov dx,offset success ;输出正确的信息
mov ah,9
int 21h
final:.exit 0
end

为什么我用debug调试的时候si没有指向source呢?
为什么结果总是error?
展开
 我来答
百度网友4326a6254
2009-04-10 · TA获得超过108个赞
知道答主
回答量:79
采纳率:0%
帮助的人:0
展开全部
楼主抠门…五级了还不给分
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
意法半导体(中国)投资有限公司
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式