注册 登录
编程论坛 汇编论坛

教我一个带进位循环移动的问题

zhouyu 发布于 2006-11-28 23:30, 1223 次点击
请问带进位循环移动是怎样移的?
可不可以把它移动的步骤告诉我?
例如:
mov cl,4
mov ax,7bc6h
rcr ax,cl
可得ax=c7bc 这是怎样得来的?
7 回复
#2
菜鸟上路2006-11-29 11:08
是这样的。不过有个条件,在移位之前,CF标志位为0。

每移动一位后的状态是:
原始数据: 0111 1011 1100 0110 CF=0
第一次: 0011 1101 1110 0011 CF=0
第二次: 0001 1110 1111 0001 CF=1
第三次: 1000 1111 0111 1000 CF=1
第四次: 1100 0111 1011 1100 CF=0
只有本站会员才能查看附件,请 登录

[此贴子已经被作者于2006-11-29 11:12:36编辑过]

#3
zhouyu2006-11-29 12:04

谢谢!

#4
曾小2006-11-29 18:52

为什么这个条件是:在移位之前,CF标志位为0?
是系统规定的吗?

#5
菜鸟上路2006-11-29 19:57
以下是引用曾小在2006-11-29 18:52:52的发言:

为什么这个条件是:在移位之前,CF标志位为0?
是系统规定的吗?

如果不为0,就不能得到LZ的那个结果,这只是针对题来说的,并不是系统规定的。

#6
曾小2006-11-29 20:21
如果不上机调试的话,那我怎么知道某一次运算时的 CF 值.
#7
菜鸟上路2006-11-29 20:39

肯定是要在计算机上才能得出CF呀,难道你能在课本上看出来!这也要看是什么样的程序呀!

#8
曾小2006-11-30 14:12

我是说运算之前的CF 的值.我想:

如果是考试,那题目是不是会告诉我们 CF 的值?

[此贴子已经被作者于2006-11-30 14:15:33编辑过]

1