汇编指令

一、JCC指令

JCC标志位含义
JE结果为0则跳转ZF=1
JNE结果不为0则跳转ZF=0
JS结果为负则跳转SF=1
JNS结果为非负则跳转SF=0
JP结果中最后一个字节中1的个数为偶数则跳转PF=1
JNP结果中最后一个字节中1的个数为奇数则跳转PF=0
JO结果溢出了则跳转OF=1
JNO结果没有溢出则跳转OF=0
JB小于则跳转(无符号数)CF=1
JNB大于等于则跳转(无符号数)CF=0
JA大于则跳转(无符号数)CF=0 and ZF=1
JNA小于等于则跳转(无符号数)CF=0 or ZF=1
JL小于则跳转(有符号数)SF!=OF
JNL大于等于则跳转(有符号数)SF=OF
JG大于则跳转(有符号数)ZF=1 or SF!=OF
JNG小于等于则跳转(有符号数)ZF=0 and SF=OF

二、其他指令

1、ADC指令:带进位的加法
ADC AL,CL
ADC BYTE PTR DS:[0X0012FF80],3
ADC DWORD PTR DS:[0X0012FF88],EAX

2、SBB指令:带借位的减法
SBB AL,CL
SBB BYTE PTR DS:[0X0012FF8C],4
SBB DWORD PTR DS:[0X0012FF90],EAX

3、XCHG指令:交换数据
XCHG AL,CL
XCHGE DWORD PTR DS:[0X0012FFC4],EBX

4、MOVS指令:移动数据(内存—内存)
MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
根据标志寄存器中的DF位,改变EDI和ESI的方向(当DF=1时,EDI和ESI分别减4;否则加4)

5、STOS指令:将AL/AX/EAX的值存储到[EDI]指定的内存单元,随后根据DF位更改EDI的值
STOS DWORD PTR ES:[EDI]
STOSD

6、REP指令:按计数寄存器(ECX)中指定的次数重复执行字符串指令
MOV ECX,10
REP MOVSD
REP STOSD

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值