• MASM,NASM和AT&T汇编格式备注


           由于工作原因有时要在几种汇编格式之间切换,特记录一下几种汇编格式,以便自已能快速"恢复"记忆,这里只是描述一下基本的格式说明.

    一.MASM 

        1. 基本格式为:   [标号:]  指令助记符  [DST [,SRC]] [;注释]

        2. 数据定义指令: DB   1 byte

                                  DW  2 byte

                                  DD   4 byte

                                  DT    8 byte

                                  DQ    10 byte  

      3.操作符PTR  指明要访问的存储器操作数类型, 格式为:类型 PTR 地址表达式

         如 MOV WORD PTR [SL],1

         类型可以是byte,word,dword,near,far

    二.NASM

         总体格式和MASM差不多,做了更好的简化,个人最喜欢.

         1.不放[]括号来的标号和变量名被认为是地址, []起来表示其内容

         2.符号$ 和$$

             $ 表示当前行汇编后的偏移地址

            $$ 表法当前section汇编后的偏移地址

            一个惯用法就是$-$$ 表示当前行距离当前section的相对偏移

     三.AT&T

             在立即数前加$,在寄存器前加%

             源操作数与目标操作数与MASM相反

        备注: 微软c/c++编译器生成汇编代码参数  cl   file.c -Fa

                GCC 生成汇编代码参数     gcc -S file.c

          

  • 相关阅读:
    ActiveMQ-在Centos7下安装和安全配置
    Servlet基础知识点
    Filter的执行顺序
    Dubbo-使用Maven构建Dubbo服务的可执行jar包
    Dubbo-Centos7管控台安装
    Spring 小知识点
    Zookeeper+ActiveMQ集群搭建
    Zookeeper在Centos7上搭建单节点应用
    SpringMVC+AJAX+JSON
    RocketMQ-Filer
  • 原文地址:https://www.cnblogs.com/jjyjjyjjy/p/2011486.html
Copyright © 2020-2023  润新知