请教test和je

killlcn 2005-01-25 03:37:32
请教test和je

8B4C24 04 mov ecx,dword ptr ss:[esp+4]
F7C1 03000000 test ecx,3
74 14 je short 00401F00

上面的代码是不是判断ecx是否为3,如果为三就跳转呢?

je的条件是zero=1对不对?test会不会改变zero标志呢?
...全文
205 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
killlcn 2005-01-28
  • 打赏
  • 举报
回复
谢谢
archim 2005-01-26
  • 打赏
  • 举报
回复
1 and 1 = 1
1 and 0 = 0
0 and 1 = 0
0 and 0 = 0
killlcn 2005-01-25
  • 打赏
  • 举报
回复
008f0b30 AND 3 =0

为什么and的结果是0?

有没有朋友解释一下?

是因为后两位都是0?

有没有什么规律?

比如and运算是只要有一个0就是0对吗?

那么3= 11(b),是不是意味着只要后两位必须全部都不为0呢?
archim 2005-01-25
  • 打赏
  • 举报
回复
只要作and运算的结果为0就跳
killlcn 2005-01-25
  • 打赏
  • 举报
回复
知道了一点,原来test是作and运算,如果后2bit为0就跳,但是为什么当ecx=008f0b30的时候还是跳呢?

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧