鱼C论坛

 找回密码
 立即注册
查看: 2271|回复: 0

关于指令REPNZ SCASB的问题

[复制链接]
发表于 2014-10-15 20:22:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
希望这个问题符合汇编语言版块, 请大家帮忙解释一下我遇到的问题. 代码如下:_________________________________________________________________________________
//下面代码的目的是在字符串str中查找字符7, 并确定其位置.
//当ecx不等于0, 且zf不等于1的时候, repnz重复执行后面的指令scasb


char *str = "1234567890";
__asm
{
   mov al, '7'
   mov edi, str
   mov ecx, -1
   repnz scasb
   not ecx
   dec ecx
}

_________________________________________________________________________________
在OD中查看, 循环是否结束, 跟zf位似乎没有什么关系, 比如, 在对比到字符3的时候, 手动设置zf=1, 循环仍然会继续下去, 直到对比到7的时候才停止.

请问这是什么原因?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-7 02:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表