• JMP

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

JMP destination

当 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 处执行

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐