汇编结构体声明、定义、使用

来源:互联网 发布:淘宝达人账号怎么取消 编辑:程序博客网 时间:2024/06/10 10:07

一、结构体声明规则

结构名 STRUC [Alignment][, NONUNIQUE]
数据定义语句序列
结构名 ENDS

  • 代码示例:

    .DATAaligned_student STRUC  4  m_Age          DWORD    ?               ;不初始化  m_Name         BYTE     30    DUP(0)    ;大小为30字节的字符串数组,初始化为0  m_Score        DWORD    0               ;INT型分数,初始化为0  m_Interests    BYTE     "No",0          ;初始化为 "No\0"aligned_student ENDS
  • 注意

    • DUP即英文duplicate的缩写,重复的意思,用来定义重复的字节、字、双字、结构等内存缓冲区。括号里写“?”表示不初始化
    • 可以不用写Alignment,默认以1对齐
    • 建议把结构体声明和定义都写在.DATA段中

二、结构体定义规则

以下任意一种都可以

student1    aligned_student    <>student2    aligned_student    <20,"Bob",80,"NO">student3    aligned_student    <20>student4    aligned_student    {20}

结构体数组定义

class1    aligned_student    25 DUP(<>)

三、结构体使用

mov        eax,student1.m_Agemov        student2.m_Score,eaxlea        eax,offset InterestName
原创粉丝点击