鱼C论坛

 找回密码
 立即注册
查看: 1906|回复: 5

“cx=2"为什么是2次?

[复制链接]
发表于 2013-3-23 17:22:23 | 显示全部楼层 |阅读模式

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

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

x
QQ截图20130323170318.png
王爽老师的《汇编语言》第二版5.3章节中(课本106页),cx=2,当执行loop指令时,
cx-1=1,由于它不等于0,所以loop跳转到0012处,这时,cx=1;再执行loop指令时,
cx-1=0,由于它等于0,所以不再执行loop循环指令,直接执行下一条。这么看的话,
当cx=2时,loop应该只执行一次循环指令,为什么课本上说是两次?第二次执行的
是哪条指令?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-3-23 22:34:01 | 显示全部楼层
当cs=2的时候  也就是指向0b3d:0014
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-3-23 22:37:23 | 显示全部楼层
当cs=2的时候  也就是指向0b3d:0014这里已经执行了一次  然后第二次就是cs=1的时候 物理地址为0b3d:0012的时候执行了最后一次。 前面执行的前一次也要算上去  这样就是两次执行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-3-24 03:01:52 | 显示全部楼层
汇编是按顺序执行代码的,首先,cx=2时电脑会一直执行下去,直到到达loop指令,它会先让cx-1然后跳转到循环内
再往下执行。所以是循环执行两次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-3-24 09:33:57 | 显示全部楼层
先执行 在减1~!先后顺序你搞错了~!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-3-26 10:03:18 | 显示全部楼层
先判定cx的值    之后循环。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-10-7 22:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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