【汇编语言】(x86)test与跳转指令(je jle jge jg jl……)组合的含义

在x86指令集中,经常遇到test指令与条件跳转指令组合,这是什么含义呢?

博主表示,查了很多资料也没人完全说清楚……

这里只用最简单的,抽象层次进行说明,不讲原理。

举例

test	edx,edx
jle		某地址

Jetbrains全家桶1年46,售后保障稳定

含义是:如果edx <= 0,就跳到某地址,否则继续往下执行。

jle换成jg的话,就是edx > 0跳转。

其他同理。


cmp指令和跳转指令组合的区别是:这个组合比较的是cmp A,B中,AB的关系。

test A,A则比较的是A0的关系。


这些都是抽象层次的应用,具体原理还需要详细研究,这里不展开。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注