它们都有通用的语句格式和功能。
语句格式: [ 标号: ] 操作符 短标号
功能:如果条件满足,则( IP )+位移量→ IP 。
1 .简单条件转移指令
条 件转移指令 jcc 根据指定的条件确定程序是否发生转移。如果满足条件则程序转移到目标地址去执行程序;不满足条件,则程序将顺序执行下一条指令。
其通用格式为:
jcc label , 条件满足,发生转移: ip ← ip+8 位位移量 ;否则,顺序执行 :ip ← ip+2
其中, label 表示目标地址( 8 位位移量)。因为 jcc 指令为 2 个字节,所以顺序执行就是指令偏移指针 ip 加 2 。条件转移指令跳转的目标地址只能用前面介绍的段内短距离跳转(短转移),即目标地址只能是在同一段内,且在当前 ip 地址 -128~+127 个单元的范围之内。这种寻址方式由于是相对于当前 ip 的,所以被称为相对寻址方式。条件转移指令不影响标志,但要利用标志。条件转移指令 jcc 中的 cc 表示利用标志判断的条件,共 16 种。
2 .无符号数条件转移指令
【例】比较无符号数大小,将较大的数存放 AX 寄存器。
CMP AX , BX ;( AX )-( BX )
JNB NEXT ;若 AX>=BX ,转移到 NEXT
XCHG AX , BX ;若 AX<BX ,交换
NEXT :…
3. 有符号数条件转移指令
【例】比较有符号数大小,将较大的数存放在 AX 寄存器。
CMP AX , BX ;( AX )-( BX )
JNL NEXT ;若 AX>=BX ,转移到 NEXT
XCHG AX , BX ;若 AX<BX ,交换
NEXT :…
全站搜索