凌阳教育的个人空间 https://blog.eetop.cn/204849 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

其他伪操作之五

已有 245 次阅读| 2016-2-1 16:49

7EXPORTGLOBAL

EXPORT声明一个符号可被其他文件引用,相当于声明了一个全局变量。GLOBALEXPORT的同义词。

语法格式

EXPORT        symbol           {[WEAK]}

GLOBAL       symbol           {[WEAK]}

其中:symbol为声明的符号名称。它是区分大小写的。[WEAK]选项声明其他同名符号优先于本符号被引用。

使用说明

使用EXPORT伪操作声明一个源文件中的符号,使得该符号可被其他源文件引用。

示例40   EXPORT GLOBAL伪操作举例。

AREA     ExampleCODEREADONLY

EXPORT        fun                                     ;声明下面的函数名称fun可被其他源文件引用。

fun  ADD       R0,R0,R1

8IMPORT

IMPORT伪操作告诉编译器当前的符号不是在本源文件中定义的,而是在其他源文件中定义的;在本源文件中可能引用该符号,而且不论本源文件是否实际引用该符号,该符号都将加入到本源文件的符号表中。

语法格式

IMPORT        symbol           {[WEAK]}

其中:symbol为声明的符号名称,它是区分大小写的。[WEAK]指定这个选项后,如果symbol在所有的源文件中都没有被定义,编译器也不会产生任何错误信息,同时编译器也不会在当前没有被INCLUDE进来的库中去查找该符号。

使用说明

使用IMPORT 伪操作声明一个符号是在其他源文件中定义的。如果链接器在链接处理时不能解析该符号,而且IMPORT伪操作中没有指定[WEAK]选项,则链接器将会9报告错误。如果链接器在链接处理时不能解析该符号,而IMPORT伪操作中指定了[WEAK]选项,则链接器将不会报告错误,而是进行下面的操作:

如果该符号被B或者BL指令引用,则该符号被设置为下一条指令的地址,该B或者BL指令相当于一条NOP指令。例如“B  signsign”不能被解析,则该指令被忽略为NOP指令,继续执行下面地址的指令,也就是将sign理解为下一条指令的地址。

其他情况下该符号被设置为0.

凌阳教育,专注嵌入式人才培养多年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网


点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 1

    粉丝
  • 0

    好友
  • 1

    获赞
  • 3

    评论
  • 3815

    访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-19 17:35 , Processed in 0.015328 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部