8086指令系统 程序控制指令
Posted _DiMinisH
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8086指令系统 程序控制指令相关的知识,希望对你有一定的参考价值。
程序控制指令
1. 无条件转移指令
(1). 段内直接转移指令JMP
JMP NEAR LABLE
功能:
LABLE是一个符号地址, 指令执行会跳到LABLE指向的位置
(2). 无条件段内间接转移指令JMP
JMP OPRD
功能:
OPRD是一个16位寄存器或存储器地址(需要指明16位), 指令执行会跳到以OPRD为内容的位置
(3). 无条件段间直接转移指令JMP
JMP FAR LABLE
功能:
LABLE是另一个代码段的地址, 指令执行会跳到CS:IP的位置
(4). 无条件段间间接转移指令JMP
JMP OPRD
功能:
OPRD是32位存储器地址, 这里面直接存储着CS:IP, 低16位送入IP, 高16位送入CS
2. 有条件转移指令
转移范围: -128 ~ +127
指令名称 | 汇编格式 | 转移条件 | 备注 |
---|---|---|---|
CX内容为0 转移 | JCXZ TARGET | CX = 0 | - |
大于/不小于等于 转移 | JG/JNLE TARGET | SF = OF, 且 ZF = 0 | 带符号数 |
大于等于/不小于 转移 | JGE/JNL TARGET | SF = OF | 带符号数 |
小于/不大于等于 转移 | JL/JNGE TARGET | SF ≠ OF, 且 ZF = 0 | 带符号数 |
小于等于/不大于 转移 | JLE/JNG TARGET | SF ≠ OF, 且 ZF = 1 | 带符号数 |
溢出转移 | JO TARGET | OF = 1 | - |
不溢出转移 | JNO TARGET | PF = 0 | - |
结果为负转移 | JS TARGET | SF = 1 | - |
结果为正转移 | JNS TARGET | SF = 0 | - |
高于/不低于等于转移 | JA/JNBE TARGET | CF = 0, 且 ZF = 0 | 无符号数 |
高于等于/不低于转移 | JAE/JNB TARGET | CF = 0 | 无符号数 |
低于/不高于等于转移 | JB/JNAE TARGET | CF = 1 | 无符号数 |
低于等于/不高于转移 | JBE/JNA TARGET | CF = 1 或 ZF = 1 | 无符号数 |
进位转移 | JC TARGET | CF = 1 | - |
无进位转移 | JNC TARGET | CF = 0 | - |
等于或为零转移 | JE/JZ TARGET | ZF = 1 | - |
不等于或非零转移 | JNE/JNZ TARGET | ZF = 0 | - |
奇偶校验为偶转移 | JP/JPE TARGET | PF = 1 | - |
奇偶校验为奇转移 | JNP/JPO TARGET | PF = 0 | - |
以上是关于8086指令系统 程序控制指令的主要内容,如果未能解决你的问题,请参考以下文章