zoukankan      html  css  js  c++  java
  • [转载] 汇编中AREA和ENTRY理解

    1、AREA    
        语法格式:    
        AREA 段名 属性1 ,属性2 ,……    
        AREA伪指令用于定义一个代码段或数据段。其中,段名若以数字开头,则该段名需用“|”括起来,如:|1_test| 。    
        属性字段表示该代码段(或数据段)的相关属性,多个属性用逗号分隔。常用的属性如下:    
        — CODE 属性:用于定义代码段,默认为READONLY 。    
        — DATA 属性:用于定义数据段,默认为READWRITE 。    
        — READONLY 属性:指定本段为只读,代码段默认为READONLY 。    
        — READWRITE 属性:指定本段为可读可写,数据段的默认属性为READWRITE 。    
        — ALIGN 属性:使用方式为ALIGN表达式。在默认时,ELF(可执行连接文件)的代码段和数据段是按字对齐的,表达式的取值范围为0~31,相应的对齐方式为2表达式次方。    
        — COMMON 属性:该属性定义一个通用的段,不包含任何的用户代码和数据。各源文件中同名的COMMON段共享同一段存储单元。 
        一个汇编语言程序至少要包含一个段,当程序太长时,也可以将程序分为多个代码段和数据段。    
        使用示例:    
        AREA Init ,CODE ,READONLY ;   该伪指令定义了一个代码段,段名为Init ,属性为只读。 
    2、ENTRY    
        语法格式:    
        ENTRY    
        ENTRY伪指令用于指定汇编程序的入口点。在一个完整的汇编程序中至少要有一个ENTRY(也可以有多个,当有多个ENTRY时,程序的真正入口点由链接器指定),但在一个源文件里最多只能有一个ENTRY(可以没有)。    
        使用示例:    
        AREA Init ,CODE ,READONLY    
        ENTRY ; 指定应用程序的入口点
     
  • 相关阅读:
    如何批量修改文件名
    iphone数据存储之-- Core Data的使用(一)
    ios中@class和 #import,两种方式的讨论
    #import与@class的区别
    第三方Push服务:Urban Airship
    iOS开发如何实现消息推送机制
    cocos2d-x中CCCallFunc CCCallFuncN CCCallFuncND的区别和使用示例
    纯Html+Ajax和JSP两者的优缺点
    什么是Ajax?
    解读前端开发工程师必备技能
  • 原文地址:https://www.cnblogs.com/iamfy/p/2493409.html
Copyright © 2011-2022 走看看