jmp、JE、JZ、JNE、JNT指令

JMP
JMP 指令无条件跳转到目标地址,该地址用代码标号来标识,并被汇编器转换为偏移量
格式:

JMP destination
1
当 CPU 执行一个无条件转移时,目标地址的偏移量被送入指令指针寄存器,从而导致迈从新地址开始继续执行。

JMP 指令提供了一种简单的方法来创建循环,即跳转到循环开始时的标号:

top:

jmp top ;不断地循环

JMP 是无条件的,因此循环会无休止地进行下去,除非找到其他方法退岀循环。

JZ,JE
这两个指令是一个意思,通过ZF标志位是否跳转,当执行到JZ或者JE指令时,如果ZF=1则跳转,如果ZF=0,不跳转

cmp eax,ecx
je 0040100c

如果此时eax=ecx=1,执行完从cmp命令,标志位ZF=1,执行je会跳转到0040100c出执行。

JNE,JNZ
这两条语句同一个意思,只是叫法不同,当执行到这两条语句时,如果标志位ZF=0,则跳转,反正,不跳转

cmp eax,ecx
jne 0040100c

此时eax=0,ecx=1,执行完cmp命令,zf=0,执行jne会跳转到 0040100c 处执行

原文链接:https://blog.csdn.net/qq_41683305/article/details/104142500

posted @ 2023-04-29 14:49  bibidotdot  阅读(5597)  评论(0)    收藏  举报