标志位
OF:Overflow,有符号溢出标志位。设置为1说明产生溢出,否则为0
DF:Direction,方向标志位,控制si/di 的增减。DF为0时,si/di递增;否则递减
IF :Interupt enable,中断允许标志位,设为1则接受外部中断,否则屏蔽外部中断。
SF:Sign,符号标志位。运算结果为正则设置SF=0,否则设置为1。
ZF:Zero,零标志位。指令执行后结果为0那么ZF=1,否则为0
AF:Auxiliary Carry,半进位标志。运算进位则设为1,否则设为0。(此处的进位是指二进制位,举个简单的例子,如 b01+b01,得到b10,此处则进位了)
PF:Parity,奇偶标志位。运算结果最后一位为1(即结果为奇数),则设置为0,否则设置为0
CF:Carry,进位标志位(无符号溢出标志位),若溢出则设置为1,否则设置为0
跳转指令
jmp [address] :无条件跳转指令
jcxz [address] :若cx为0则跳转
jecxz [address] :若ecx为0则跳转
je [address] :jump equal,比较结果相等则跳转(判断ZF,若为1则跳转)
jne [address]: jmp not equal,不相等则跳转
jz [address]:zf为1则跳转
jnz [address]:zf为0则跳转
此外,还有js,jns,jc,jnc,jo,jno,jp,jnp指令,分别根据sf,cf,of,op的值不同进行跳转,规则同jz不再阐述
ja [address]:无符号大于则跳转
jna [address]:无符号不大于则跳转
jnae [address]:无符号不大于等于则跳转
jg表示有符号大于则跳转,jb表示无符号小于则跳转,jl表示有符号小于则跳转,jng,jnge,jnb,jnbe,jnl,jle,jnle同上类比