汇编指令

来源:互联网 发布:淘宝今日销量 编辑:程序博客网 时间:2024/05/01 16:20
指令功能AAA调整加AAD调整除AAM调整乘AAS调整减ADC进位加ADD加AND与ARPL调整优先级BOUND检查数组BSF位右扫描BSR位左扫描BSWAP交换字节BT位测试BTC位测试求反BTR位测试清零BTS位测试置一CALL过程调用CBW转换字节CDQ转换双字CLC进位清零CLD方向清零CLI中断清零CLTS任务清除CMC进位求反CMOVA高于传送CMOVB低于传送CMOVE相等传送CMOVG大于传送CMOVL小于传送CMOVNA不高于传送CMOVNB不低于传送CMOVNE不等传送CMOVNG不大于传送CMOVNL不小于传送CMOVNO不溢出传送CMOVNP非奇偶传送CMOVNS非负传送CMOVO溢出传送CMOVP奇偶传送CMOVS负号传送CMP比较CMPSB比较字节串CMPSD比较双字串CMPSW比较字串CMPXCHG比较交换CMPXCHG486比较交换486CMPXCHG8B比较交换8字节CPUIDCPU标识CWD转换字CWDE扩展字DAA调整加十DAS调整减十DEC减一DIV除ENTER建立堆栈帧HLT停IDIV符号整除IMUL符号乘法IN端口输入INC加一INSB端口输入字节串INSD端口输入双字串INSW端口输入字串JA高于跳转JB低于跳转JBE不高于跳转JCXZ计数一六零跳转JE相等跳转JECXZ计数三二零跳转JG大于跳转JL小于跳转JMP跳转JMPE跳转扩展JNB不低于跳转JNE不等跳转JNG不大于跳转JNL不小于跳转JNO不溢出跳转JNP非奇偶跳转JNS非负跳转JO溢出跳转JP奇偶跳转JS负号跳转LAHF加载标志低八LAR加载访问权限LDS加载数据段LEA加载有效地址LEAVE清除过程堆栈LES加载附加段LFS加载标志段LGDT加载全局描述符LGS加载全局段LIDT加载中断描述符LMSW加载状态字LOADALL加载所有LOADALL286加载所有286LOCK锁LODSB加载源变址字节串LODSD加载源变址双字串LODSW加载源变址字串LOOP计数循环LOOPE相等循环LOOPNE不等循环LOOPNZ非零循环LOOPZ为零循环LSL加载段界限LSS加载堆栈段LTR加载任务MONITOR监视MOV传送MOVSB传送字节串MOVSD传送双字串MOVSW传送字串MOVSX符号传送MOVZX零传送MUL乘MWAIT NEG求补NOP空NOT非OR或OUT端口输出OUTSB端口输出字节串OUTSD端口输出双字串OUTSW端口输出字串POP出栈POPA全部出栈POPF标志出栈PUSH压栈PUSHA全部压栈PUSHF标志压栈RCL进位循环左移RCR进位循环右移RDMSR读专用模式RDPMC读执行监视计数RDSHR RDTSC读时间戳计数REP重复REPE相等重复REPNE不等重复RET过程返回RETF远过程返回RETN近过程返回ROL循环左移ROR循环右移RSM恢复系统管理SAHF恢复标志低八SAL算术左移SALC SAR算术右移SBB借位减SCASB扫描字节串SCASD扫描双字串SCASW扫描字串SETA高于置位SETB低于置位SETE相等置位SETG大于置位SETL小于置位SETNA不高于置位SETNB不低于置位SETNE不等置位SETNG不大于置位SETNL不小于置位SETNO不溢出置位SETNP非奇偶置位SETNS非负置位SETO溢出置位SETP奇偶置位SETS负号置位SGDT保存全局描述符SHL逻辑左移SHLD双精度左移SHR逻辑右移SHRD双精度右移SIDT保存中断描述符SLDT保存局部描述符SMI SMINT SMINTOLD SMSW保存状态字STC进位设置STD方向设置STI中断设置STOSB保存字节串STOSD保存双字串STOSW保存字串STR保存任务SUB减SYSCALL系统调用SYSENTER系统进入SYSEXIT系统退出SYSRET系统返回TEST数测试UD0未定义指令0UD1未定义指令1UD2未定义指令2UMOV VERW校验写WAIT等WBINVD回写无效高速缓存WRMSR写专用模式WRSHR XADD交换加XBTS XCHG交换XLAT换码XOR异或XSTORE 


指令功能EMMS媒体空MMX状态F2XM1浮点栈顶绝对值FADD浮点加FADDP浮点加出栈FBLD浮点加载十数FBSTP浮点保存十数出栈FCHS浮点正负求反FCLEX浮点检查错误清除FCMOVB浮点低于传送FCMOVBE浮点不高于传送FCMOVE浮点相等传送FCMOVNB浮点不低于传送FCMOVNBE浮点高于传送FCMOVNE浮点不等传送FCMOVNU浮点有序传送FCMOVU浮点无序传送FCOM浮点比较FCOMI浮点比较加载标志FCOMIP浮点比较加载标志出栈FCOMP浮点比较出栈FCOMPP浮点比较出栈二FCOS浮点余弦FDECSTP浮点栈针减一FDISI浮点检查禁止中断FDIV浮点除FDIVP浮点除出栈FDIVR浮点反除FDIVRP浮点反除出栈FENI浮点检查禁止中断二FFREE浮点释放FFREEP浮点释放出栈FIADD浮点加整数FICOM浮点比较整数FICOMP浮点比较整数出栈FIDIV浮点除整数FIDIVR浮点反除FILD浮点加载整数FIMUL浮点乘整数FINCSTP浮点栈针加一FINIT浮点检查初始化FIST浮点保存整数FISTP浮点保存整数出栈FISTTP FISUB浮点减整数FISUBR浮点反减整数FLD浮点加载数FLD1浮点加载一FLDCW浮点加载控制器FLDENV浮点加载环境FLDL2E浮点加载L2EFLDL2T浮点加载L2TFLDLG2浮点加载LG2FLDLN2浮点加载LN2FLDPI浮点加载PIFLDZ浮点加载零FMUL浮点乘FMULP浮点乘出栈FNCLEX浮点不检查错误清除FNDISI浮点不检查禁止中断FNENI浮点不检查禁止中断二FNINIT浮点不检查初始化FNOP浮点空FNSAVE浮点不检查保存状态FNSTCW浮点不检查保存控制器FNSTENV浮点不检查保存环境FNSTSW浮点不检查保存状态器FPATAN浮点部分反正切FPREM浮点部分余数FPREM1浮点部分余数二FPTAN浮点部分正切FRNDINT浮点舍入求整FRSTOR浮点恢复状态FSAVE浮点检查保存状态FSCALE浮点比例运算FSETPM浮点设置保护FSIN浮点正弦FSINCOS浮点正余弦FSQRT浮点平方根FST浮点保存FSTCW浮点检查保存控制器FSTENV浮点检查保存环境FSTP浮点保存出栈FSTSW浮点检查保存状态器FSUB浮点减FSUBP浮点减出栈FSUBR浮点反减FSUBRP浮点反减出栈FTST浮点比零FUCOM浮点无序比较FUCOMI浮点反比加载标志FUCOMIP浮点反比加载标志出栈FUCOMP浮点无序比较出栈FUCOMPP浮点无序比较出栈二FWAIT浮点等FXAM浮点检查FXCH浮点交换FXTRACT浮点分解FYL2X浮点求L2XFYL2XP1浮点求L2XP1MOVED媒体双字传送MOVEQ媒体四字传送PACKSSDW媒体符号双字压缩PACKSSWB媒体符号字压缩PACKUSWB媒体无符号字压缩PADDB媒体截断字节加PADDD媒体截断双字加PADDSB媒体符号饱和字节加PADDSIW PADDSW媒体符号饱和字加PADDUSB媒体无符号饱和字节加PADDUSW媒体无符号饱和字加PADDW媒体截断字加PAND媒体与PANDN媒体与非PAVEB PCMPEQB媒体字节比等PCMPEQD媒体双字比等PCMPEQW媒体字比等PCMPGTB媒体字节比大PCMPGTD媒体双字比大PCMPGTW媒体字比大PDISTIB PMACHRIW PMADDWD PMAGW PMULHRIW PMULHRWC PMULHW PMVGEZB PMVLZB PMVNZB PMVZB POR媒体或PSLLD媒体双字左移PSLLQ媒体四字左移PSLLW媒体字左移PSRAD媒体双字算术右移PSRAW媒体字算术右移PSRLD媒体双字右移PSRLQ媒体四字右移PSRLW媒体字右移PSUBB媒体截断字节减PSUBSB媒体符号饱和字节减PSUBSIW PSUBSW媒体符号饱和字减PSUBUSB媒体无符号饱和字节减PSUBUSW媒体无符号饱和字减PSUBW媒体截断字减PUNPCKHBW媒体字节高位解压PUNPCKHDQ媒体双字高位解压PUNPCKHWD媒体字高位解压PUNPCKLBW媒体字节低位解压PUNPCKLDQ媒体双字低位解压PUNPCKLWD媒体字低位解压


Delphi 2010 VCL、JCL 源码中用到的汇编指令(只是粗略统计):

按名称排序使用次数按使用频率排序使用次数ADC15MOV4053ADD659PUSH1505AND162CMP1372BSF8POP1187BSR7JE952BSWAP12CALL847BT13JMP771BTC9ADD659BTR10JNE503BTS10TEST452CALL847SUB400CDQ6DEC332CLD10LEA288CMP1372RET280CPUID3INC261CWD1JZ252DB241OR248DD189DB241DEC332DD189DIV40JNZ167DW63MOVZX166ELSE2AND162END2FLD154F2XM16SHR131FABS7JB101FADD9JG92FADDP15JA86FBSTP3REP83FCHS5JBE81FCLEX5XCHG79FCOM7JLE79FCOMP7FSTP76FCOMPP3LODSB74FCOS4JL72FDIV11FWAIT72FDIVP5NEG70FDIVRP11DW63FFREE13LOCK61FIADD6STOSB58FIDIV2STOSW54FILD32MOVSX53FIMUL4FLDCW52FINCSTP1FLD152FISTP30SHL48FLD154JAE48FLD152DIV40FLDCW52JGE35FLDL2E6REPNE33FLDLG22LODSW33FLDLN29IMUL32FLDZ8FMUL32FMUL32FILD32FMULP26JNS31FNCLEX11FISTP30FNINIT2FXCH28FNSTCW20FMULP26FNSTSW6JS24FPATAN15SBB22FPREM3FSTSW22FPTAN4LOOP20FRNDINT14FNSTCW20FSCALE8FSTCW18FSIN3NOT17FSINCOS7JECXZ17FSQRT15FYL2X17FST5MUL16FSTCW18JNC16FSTP76SAHF15FSTSW22ROR15FSUB11FSQRT15FSUBP5FPATAN15FSUBR2FADDP15FSUBRP4ADC15FTST4FRNDINT14FWAIT72FFREE13FXAM1BT13FXCH28SAR12FXTRACT1ROL12FYL2X17RCL12FYL2XP11JO12HLT1BSWAP12IMUL32REPE11INC261FSUB11INT8FNCLEX11JA86FDIVRP11JAE48FDIV11JB101WAIT10JBE81CLD10JC6BTS10JE952BTR10JECXZ17SETC9JG92FLDLN29JGE35FADD9JL72BTC9JLE79INT8JMP771FSCALE8JNA1FLDZ8JNC16BSF8JNE503PUSHFD7JNG2FSINCOS7JNL1FCOMP7JNS31FCOM7JNZ167FABS7JO12BSR7JRCXZ2NOP6JS24JC6JZ252FNSTSW6LEA288FLDL2E6LEAVE1FIADD6LOCK61F2XM16LODSB74CDQ6LODSW33STOSD5LOOP20POPFD5MOV4053FSUBP5MOVSB1FST5MOVSX53FDIVP5MOVZX166FCLEX5MUL16FCHS5NEG70SHRD4NOP6PUSHF4NOT17POPF4OR248FTST4PAUSE3FSUBRP4POP1187FPTAN4POPF4FIMUL4POPFD5FCOS4PUSH1505RCR3PUSHF4PAUSE3PUSHFD7FSIN3RCL12FPREM3RCR3FCOMPP3REP83FBSTP3REPE11CPUID3REPNE33STD2RET280SETNZ2ROL12SETE2ROR15JRCXZ2SAHF15JNG2SAL1FSUBR2SAR12FNINIT2SBB22FLDLG22SETC9FIDIV2SETE2END2SETNC1ELSE2SETNZ2STC1SHL48SHLD1SHLD1SETNC1SHR131SAL1SHRD4MOVSB1STC1LEAVE1STD2JNL1STOSB58JNA1STOSD5HLT1STOSW54FYL2XP11SUB400FXTRACT1TEST452FXAM1WAIT10FINCSTP1XCHG79CWD1补充 registersymbol(名字)  作为全局内存 

 un registersymbol(名字)

alloc (名字,大小)申请内存

aobscan (名字,数据) 寻找 唯一


1 0
原创粉丝点击