它们都有通用的语句格式和功能。 语句格式: [ 标号: ] 操作符 短标号 功能:如果条件满足,则( 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 :…
|