常用汇编指令与标志位关系 汇编指令大全

加法指令 ADD(addition)

指令对标志位的影响:

CF=1最高有效位向高位有进位

CF=0最高有效位向高位无进位

OF=1两个同符号数相加(正数+正数或 负数+负数),结果符号与其相反。

OF=0两个不同符号数相加,或同符号数相加,结果符号与其相同。

带进位加法指令 ADC (add withcarry)

指令对标志位的影响:

CF=1最高有效位向高位有进位

CF=0最低有效位相高位无进位

OF=1两个同符号数相加,结果符号与其相反,

OF=0两个同符号数相加,或同符号相加,结果符号与其相同

加1指令INC (increament)

指令对标志位的影响:

对CF无影响

OF=1两个同符号数相加,结果符号与其相反,

OF=0两个同符号数相加,或同符号相加,结果符号与其相同。

减法指令 SUB(subtract)

指令对标志位的影响:

CF=1 二进制减法运算中最高有效位向高位有借位(被减数小于减数,不够减的情况)

CF=0 二进制减法运算中最高有效为向高位无借位(被减数〉=减数,够减的情况)

OF=1 两数符号相反(正数-负数,或负数-正数),而结果符号与减数相同。

OF=0 同符号数相减时,或不同符号数相减,其结果符号与减数不同。

带借位减法指令 SBB (subtractwith borrow)

指令对标志位的影响:

CF=1 二进制减法运算中最高有效位向高位有借位(被减数小于减数,不够减的情况)

CF=0 二进制减法运算中最高有效为向高位无借位(被减数〉=减数,够减的情况)

OF=1 两数符号相反(正数-负数,或负数-正数),而结果符号与减数相同。

OF=0 同符号数相减时,或不同符号数相减,其结果符号与减数不同。

减1指令DEC (decrement)

指令对标志位的影响:

对CF无影响

OF=1 两数符号相反(正数-负数,或负数-正数),而结果符号与减数相同。

OF=0 同符号数相减时,或不同符号数相减,其结果符号与减数不同。

比较指令 CMP(compare)

指令对标志位的影响:

CF=1 二进制减法运算中最高有效位向高位有借位(被减数小于减数,不够减的情况)

CF=0 二进制减法运算中最高有效为向高位无借位(被减数〉=减数,够减的情况)

OF=1两数符号相反(正数-负数,或负数-正数),而结果符号与减数相同。

OF=0 同符号数相减时,或不同符号数相减,其结果符号与减数不同。

求补指令 NEG (negate)

指令对标志位的影响:

CF=1 不为0的操作数求补时

CF=0  为0的操作数求补时

OF=1操作数为-128(字节运算)或操作数为-32768(字运算)

OF=0当求补运算的操作数不为-128(字节)或-32768(字)时

无符号乘法指令 MUL (unsignedmultiple) 有符号乘法指令IMUL(signed muliple)

指令对标志位的影响:乘法指令只影响标志位CF和OF,其他条件码位无定义。

MUL指令的条件码设置为:

CF OF=0 0 乘积的高一半为0(字节操作的(AH)或字操作的(DX))

CF OF=1 1 乘积的高一半不为0

IMUL指令的条件码设置为:

CF OF=0 0 乘积的高一半为低一半的符号扩展.

CF OF=1 1 其他情况

无符号数除法 DIV (unsigneddivide)带符号数除法 IDIV (singeddivide)

指令对标志位的影响:不影响条件码。

逻辑与 AND (logicand)

指令对标志位的影响:

指令执行后 CF 和 OF 置零,AF无定义。

PF=1 结果操作数中1的个数为偶数时置1

PF=0 结果操作数中1的个数为奇数时置0

逻辑或 or (logicor)

指令对标志位的影响:

令执行后 CF 和 OF 置零,AF无定义。

PF=1 结果操作数中1的个数为偶数时置1

PF=0 结果操作数中1的个数为奇数时置0

逻辑非 NOT (logicnot)

指令对标志位的影响:对标志位无影响

异或 XOR (exclusiceor)

指令对标志位的影响:

令执行后 CF 和 OF 置零,AF无定义。

PF=1结果操作数中1的个数为偶数时置1

PF=0 结果操作数中1的个数为奇数时置0

测试指令 TEST

指令对标志位的影响:

令执行后 CF 和 OF 置零,AF无定义。

PF=1 结果操作数中1的个数为偶数时置1

PF=0 结果操作数中1的个数为奇数时置0

逻辑左移 SHL (shift logicalleft)

指令对标志位的影响: CF=移入的数值

OF=1 当cnt=1时,移动后最高位的值发生变化。

OF=0 当cnt=1时,移动时最高位的值未发生变化。

逻辑右移 SHR (shift logicalright)

指令对标志位的影响:CF=移入的数值

OF=1 当cnt=1时,移动后最高位的值发生变化。

OF=0 当cnt=1时,移动时最高位的值未发生变化。

算术左移 SAL (shiftarithmetic left)

指令对标志位的影响:CF=移入的数值

OF=1 当cnt=1时,移动后最高位的值发生变化。

OF=0 当cnt=1时,移动时最高位的值未发生变化。

算术右移SAR (shift arithmetic right)

指令对标志位的影响:CF=移入的数值

OF=1当cnt=1时,移动后最高位的值发生变化。

OF=0 当cnt=1时,移动时最高位的值未发生变化。

循环左移 ROL (rotateleft)

指令对标志位的影响:CF=移入的数值

OF=1 当cnt=1时,移动后最高位的值发生变化。

OF=0 当cnt=1时,移动时最高位的值未发生变化。

循环右移 ROR (rotateright)

指令对标志位的影响:CF=移入的数值

OF=1 当cnt=1时,移动后最高位的值发生变化。

OF=0 当cnt=1时,移动时最高位的值未发生变化。

带进位的循环左移 RCL (rotateleft through carry)

指令对标志位的影响:CF=移入的数值。

OF=1 当cnt=1时,移动后最高位的值未发生变化。

OF=0 当cnt=1时,移动后最高位的值发生变化。

SF、ZF、PF标志位不受影响。

带进位的循环右移 RCR (rotateright through carry)

指令对标志位的影响:CF=移入的数值。

OF=1 当cnt=1时,操作数最高位的值未发生变化。

OF=0 当cnt=1时,操作数最高位的值发生变化。

SF、ZF、PF标志位不受影响。

串传送 MOVSB / MOVSW (movestring byte/word)

指令对条件码的影响:不影响条件码。

存串 STOSB / STOSW (stroefrom string byte/word)

指令对条件码的影响:不影响条件码。

取串LODSB / LODSW (loadfrom string byte/word)

指令对条件码的影响:不影响条件码。

串比较 CMPSB / CMPSW(compare string byte/word)

指令对条件码的影响:

CF=1 二进制减法运算中最高有效位向高位有借位(被减数小于减数,不够减的情况)

CF=0 二进制减法运算中最高有效为向高位无借位(被减数〉=减数,够减的情况)

OF=1 两数符号相反(正数-负数,或负数-正数),而结果符号与减数相同。

OF=0 同符号数相减时,或不同符号数相减,其结果符号与减数不同。

串扫描 SCASB / SCASW (scanstring byte / word)

指令对条件码的影响:

CF=1 二进制减法运算中最高有效位向高位有借位(被减数小于减数,不够减的情况)

CF=0 二进制减法运算中最高有效为向高位无借位(被减数〉=减数,够减的情况)

OF=1 两数符号相反(正数-负数,或负数-正数),而结果符号与减数相同。

OF=0同符号数相减时,或不同符号数相减,其结果符号与减数不同。

条件转移指令

指令的汇编格式及功能根据条件码的值转移:

49、JZ(JE) OPR ZF=1

50、JNZ(JNE) OPR ZF=0

51、JS OPRSF=1

52、JNS OPR SF=0

53、JO OPROF=1

常用汇编指令与标志位关系 汇编指令大全

54、JNO OPROF=0

55、JP OPRPF=1

56、JNP OPRPF=0

57、JC OPRCF=1

58、JNC OPR CF=0

比较两个无符号数,根据比较的结果转移

59、JB(JNAE,JC)OPRCF=1被减数小于减数则转移

60、JNB(JAE,JNC) OPRCF=0 被减数大于或等于减数则转移

61、JBE(JNA) OPRCF或ZF=1被减数小于或等于减数则转移

62、JNBE(JA) OPRCF或ZF=0被减数大于减数则转移

比较两个带符号数,根据比较结果转移

63、JL/JNGE OPR SF异或OF=1被减数小于减数则转移

64、JNL/JGESF异或OF=0被减数不小于减数则转移

65、JLE/JNE(SF异或OF)与ZF=1被减数不大于减数则转移

66、JNLE/JG(SF异或OF)与ZF=0被减数大于减数则转移

根据CX寄存器的值转移

67、JCXZ(CX)=0CX内容为零则转移

  

爱华网本文地址 » http://www.413yy.cn/a/25101013/177304.html

更多阅读

转 TCP标志位详解及tcp拦截配置_syn tcp max syn backlog

TCP标志位URG:此标志表示TCP包的紧急指针域(后面马上就要说到)有效,用来保证TCP连接不被中断,并且督促中间层设备要尽快处理这些数据;ACK:此标志表示应答域有效,就是说前面所说的TCP应答号将会包含在TCP数据包中;有两个取值:0和1,为1的时候表

《金陵十三钗》——日军军官与39位日本演员 日军军官大衣

很抱歉,我在《金陵十三钗——如何看待片中的硬伤和缺憾》一文中,有对影片的一处误读,即是对日军大佐长谷川唱《故乡》一段描写的理解。春节期间,与多位朋友聊起这部电影,聊起这个情节,我接受了大家的看法,即长谷川这段戏与电影《南京、南

怀孕初期症状-怀孕与月经的关系 怀孕初期症状像来月经

怀孕初期症状-怀孕与月经的关系 怀孕了还会来月经吗?行经是一个连续过程,激素不断发生变化,最终导致子宫内膜的增厚、排卵,假如怀孕没有发生,内膜还会脱落。在经期,每天都会有重要事件在卵巢和子宫内膜里发生。

从圣经看人类与动物关系的三个阶段 哺乳动物与人类的关系

人类与动物都生活在这个地球上,人类与动物的关系实在是剪不断理还乱。我们在珍惜动物的同时又宰杀动物吃肉;我们在谴责别人虐待动物的同时,自己嘴里却冒着牛羊的脂油;我们不但被别人指责为假惺惺,连我们自己也感觉矛盾困惑。人与动物究竟

声明:《常用汇编指令与标志位关系 汇编指令大全》为网友弑神者分享!如侵犯到您的合法权益请联系我们删除