test eax,eax 如何解释?
答案:5 悬赏:40 手机版
解决时间 2021-02-11 09:32
- 提问者网友:孤山下
- 2021-02-10 17:04
test eax,eax 如何解释?
最佳答案
- 五星知识达人网友:青灯有味
- 2021-02-10 17:14
test eax,eax 基本上和 And eax,eax 是一样的,不同的是test 不改变eax的结果,只是改变FLAG寄存器的状态,也就是改变进位标志,零标志,溢出标志等 等。举一个例子,如果eax=01h,test eax,eax 就是两个01h 作与操作,所以结果还是01h,不是0的话,就不会跳转 je xxxx。所以要跳转je xxxx,只有一种可能就是eax=0h.所以现在eax=0a 则不会跳转 je xxxx
全部回答
- 1楼网友:山君与见山
- 2021-02-10 20:29
这都是汇编指令 32位汇编指令
- 2楼网友:怀裏藏嬌
- 2021-02-10 19:25
1楼 lauey 正解。
- 3楼网友:神也偏爱
- 2021-02-10 18:50
test eax,eax是位的与运算,不改变eax的值,但会改变标志位的值~
- 4楼网友:野慌
- 2021-02-10 18:36
这样的结果相当于CMP EAX,0
但是立即数操作比寄存器直接操作慢多了,
其实你给的程序就是当eax为0时跳转xxx
而你已经说了EAX=0ah
所以不会跳啦
但是立即数操作比寄存器直接操作慢多了,
其实你给的程序就是当eax为0时跳转xxx
而你已经说了EAX=0ah
所以不会跳啦
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯