8086微处理器程序执行转移指令
这些指令用于在执行过程中转移/跳转指令。分支指令有两种类型:无条件分支和条件分支。
无条件程序执行转移指令如下所示。
操作码 | 操作数 | 描述 |
---|---|---|
CALL | 地址 | 用于调用过程并将它们的返回地址保存到堆栈。 |
RET | ---- | 用于从过程返回到主程序。 |
JMP | 地址 | 用于跳转到提供的地址以继续执行下一条指令。 |
LOOP | 地址 | 用于循环执行一组指令,直到条件满足,即CX = 0。 |
现在让我们看看条件程序执行转移指令。
操作码 | 操作数 | 描述 |
---|---|---|
JC | 地址 | 如果进位标志CY = 1则跳转 |
JNC | 地址 | 如果无进位标志(CY = 0)则跳转 |
JE/JZ | 地址 | 如果等于/零标志ZF = 1则跳转 |
JNE/JNZ | 地址 | 如果不等/零标志ZF = 0则跳转 |
JO | 地址 | 如果溢出标志OF = 1则跳转 |
JNO | 地址 | 如果无溢出标志OF = 0则跳转 |
JP/ JPE | 地址 | 如果奇偶校验/奇偶校验为偶PF = 1则跳转 |
JNP/ JPO | 地址 | 如果奇偶校验/奇偶校验为奇PF = 0则跳转 |
JS | 地址 | 如果符号标志SF = 1则跳转 |
JNS | 地址 | 如果无符号标志SF = 0则跳转 |
JA/ JNBE | 地址 | 如果高于/不低于/等于指令满足则跳转。 |
JAE/ JNB | 地址 | 如果高于/不低于指令满足则跳转。 |
JBE/ JNA | 地址 | 如果低于/等于/不高于指令满足则跳转。 |
JG/ JNLE | 地址 | 如果大于/不小于/等于指令满足则跳转。 |
JGE/ JNL | 地址 | 如果大于/等于/不小于指令满足则跳转。 |
JL/ JNGE | 地址 | 如果小于/不大于/等于指令满足则跳转。 |
JLE/ JNG | 地址 | 如果小于/等于/不大于指令满足则跳转。 |
JCXZ | 地址 | 如果CX = 0则跳转到提供的地址 |
LOOPE/ LOOPZ | 地址 | 循环执行一组指令,直到ZF = 1 & CX = 0满足。 |
LOOPNE/ LOOPNZ | 地址 | 循环执行一组指令,直到ZF = 0 & CX = 0满足。 |
广告