汇编语言中的条件指令有哪些

JavaScript013

汇编语言中的条件指令有哪些,第1张

无符号数条件转移指令

je/jz zf=1 若相等或为零则转移

jne/jnz zf=0 若不相等或不为零则转移

ja/jnbe cf=0 and zf=0 若高于或不低于等于则转移

jae/jnb cf=0 若大于等于或不低于则转移

jb/jnae cf=1 and zf=0 若小于或不大于等于则转移

jbe/jna cf=1 若小于等于或不大于则转移

有符号数条件转移指令

je/jz zf=1 若相等或为零则转移

jne/jnz zf=0 若不相等或不为零则转移

jg/jnle sf=of and zf=0 若大于或不小于等于则转移

jge/jnl sf=of 若大于等于或不小于则转移

jl/jnge sf!=of 若小于或不大于等于则转移

jle/jng sf!=of or zf=1 若小于等于或不大于则转移

特殊算数标志位的条件转移指令

jc cf=1 若有进位则转移

jnc cf=0 若无进位则转移

jo of=1 若有溢出则转移

jno of=0 若无溢出则转移

jp/jpe pf=1 若有偶数个1 则转移

jnp/jpo pf=0 若有奇数个1 则转移

js sf=1 若为负数则转移

jns sf=0 若为正数则转移

汇编特点是贴近机器,更简练,所以指令就分很细有短跳转,长跳转,段内跳,段间跳,明明在段内用段内跳可以节省字节缩短指令长度,为什么还要用长的,要知道有些对程序常度有要求的场合,你必须为节省几个字节尔较劲脑子