鱼C论坛

 找回密码
 立即注册
查看: 3668|回复: 4

关于loop指令的疑问

[复制链接]
发表于 2011-4-12 11:04:53 | 显示全部楼层 |阅读模式

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

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

x
为了这个loop指令纠结了好几天 。。。

假如有一段代码mov cs=1
                   s: mov ax,0
                        loop s
$B@JB]%CH)D7Y%W0]_J1@5Y.jpg
还有第九章的这个问题
谁能帮我详细的讲一下loop 指令执行时的过程和cs中的变化情况??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-4-12 14:00:38 | 显示全部楼层
我记得  LOOP是依据的CX的值吧!

这位同学  别搞混了咯!LOOP和CS无关的啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-4-13 14:03:25 | 显示全部楼层
loop 是循环没错吧!
既然有循环就要有循环次数!  一个无限次数的循环就是常说的 '死循环',我们可不想要死循环~
所以在汇编中需要有一个值 来告诉 loop指令,要执行多少次!!!
而这个值就存在 CX 中,至于为什么在CX中,这个就没什么好说的了.死规定就是这样了.
--------------------
然后你又说道 在循环(loop)执行的时候 CS的变化.其实在循环执行的时候CS 是不发生变化的.
原因是,CS存的是代码 也就是指令,循环其实就是在重复这些指令,一遍一遍的不停的执行.所以说循环的时候
CS是不变化的
--------------------------------------
有任何错误之处,请及时指出,以免误人子弟{:2_27:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-4-13 14:58:29 | 显示全部楼层
那个题应该填,jcxz ok
jcxz的意思是用C语言解释就是:
if(0 == cx)
     jmp ok;(跳到标号ok处)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-4-13 15:00:55 | 显示全部楼层
这个loop和CX的关系就是for(i = 0; i < 10; i++)循环中这个for 和 i的关系,用i控制循环的次数,汇编用cx的值控制循环的次数。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-4-25 08:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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