能力值:
( LV2,RANK:10 )
|
-
-
2 楼
相当于and eax, eax
但不改变eax的值 一般都是为了检验eax是否为空
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
一般
if (a)
{
a = 0;
}
else
{
a++;
}
会生成
TEST EAX, EAX
JZ lb1 ;如果EAX为0则跳转到lb1
XOR EAX, EAX
RET
lb1:
INC EAX
即TEST后常用JZ, JNZ跳转指令
TEST EAX, EAX 则是将EAX与EAX进行与运算并设置标志位ZF但不把结果送回EAX
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
学习下……
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
Miros 的解答很好的。。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
学习一下,呵呵
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
学习.
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
学到了.
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
也学习一下!谢谢!
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
相当于eax对本身做一个and运算
and eax, eax
但是并不改变目的操作数的值,影响的只是相应的eflags,比如ZF,目的是判断eax是否为零,如果eax为零,则test后ZF=1
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
的确有实力啊~~~~~
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
不错,学习了,
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
嗯,学习了,其实我们平时也可以自己写一些常用的例子,然后反编译过来学习
|
|
|