常用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 04001000  含义:if(ZF==1)GOTO 04001000  解释:若 ZF 为 1,则跳转到 04001000

    JNE(JNZ)

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

    JMP

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

    CALL

    示例:CALL lstrcmpW  解释:调用 lstrcmpW

    PUSH

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

    POP

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

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

    • 本文由 发表于 2018年10月8日14:27:07
    • 转载请务必保留本文链接:https://www.huojunqiang.com/29.html
    股票期货管理多屏幕显示的小程序 让信息在各个屏幕间方便切换 未分类

    股票期货管理多屏幕显示的小程序 让信息在各个屏幕间方便切换

    做股票和期货的朋友为了看盘方便很多电脑都用一块以上的多个屏幕进行操作,每块屏幕显示不同的程序,很多朋友期望相关程序一打开就自动在某块屏幕上显示,比如一打开程序让其显示在第二块屏幕上。这种情况只有在程序...
    CodeBlocks 20.03中文语言包 未分类

    CodeBlocks 20.03中文语言包

    codeblocks20.03汉化包 下载附件解压,直接将share文件夹复制到安装目录下 具体目录根据程序安装实际目录,例如C:\Program Files (x86)\CodeBlocks粘贴即可...