常用x86汇编指令整理

常用x86汇编指令整理X86汇编指令很多,如果不是专业用汇编语言开发程序,完全没有必要记忆那么多指令。若只用于调试软件只要记住常用的指令就可以了,遇到不常用的到时候先

大家好,欢迎来到IT知识分享网。

X86汇编指令很多,如果不是专业用汇编语言开发程序,完全没有必要记忆那么多指令,若只用于调试软件只要记住常用的指令就可以了,遇到不常用的到时候先查也来得及,不影响工作。

常用x86汇编指令整理

汇编语言源代码

MOV

示例:MOV EAX,ECX 含义:EAX=ECX 解释:将ECX的值储存到EAX

ADD

示例:ADD EAX,ECX 含义:EAX=EAX+ECX 解释:将EAX的值加上ECX的值

SUB

示例:SUB EAX,ECX 含义:EAX=EAX-ECX 解释:将EAX的值减去ECX的值

INC

示例:INC EAX 含义:EAX+1 解释:将 EAX 的值加 1

DEC

示例:DEC EAX 含义:EAX-1 解释:将 EAX 的值减 1

LEA

示例:LEA EAX,[ECX+4] 含义:EAX = ECX+4 解释:将 ECX+4 的值存入 EAX

CMP

示例:CMP EAX,ECX

含义:

if(EAX == ECX){ZF=1} else ZF=0 

解释:对两个值进行比较并根据结果设置标志,若 EAX 与 ECX 相同,则 ZF=1,若 EAX 与 ECX 不同,则 ZF=0

TEST

示例:TEST EAX

含义:

if(EAX == 0) ZF=1 else ZF=0 

解释:将值与 0 进行比较并根据结果设置标志,若 EAX 为 0,则 ZF=1,若 EAX 不为 0,则 ZF=0

JE(JZ)

示例:JE 0 含义:if(ZF==1)GOTO 0 解释:若 ZF 为 1,则跳转到 0

JNE(JNZ)

示例:JNE 0 含义:if(ZF==0) GOTO 0 解释:若 ZF 为 0,则跳转到 0

JMP

示例:JMP 0 含义:GOTO 0 解释:无条件跳转到 0

CALL

示例:CALL lstrcmpW 解释:调用 lstrcmpW

PUSH

示例:PUSH 00000001 解释:将 00000001入栈

POP

示例:POP EAX 解释:出栈并将获取的值存入EAX

如果还有一些常用的,欢迎大家留言指出,我会继续补充。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/84537.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信