DSP教程 第七章_伪指令与宏语言.pptVIP

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DSP教程 第七章_伪指令与宏语言

第七章 伪/宏指令和目标文件链接;7.1、伪指令 7.2、宏语言 7.3、内嵌函数 7.4、目标文件链接;伪指令 ;;7. 2 宏指令;宏名 —— 用通常规定的字符串格式书写。 .mexit —— 相当于“goto .endm”,用于条件判断后的转移,可缺省。 形式参数 —— 或称为替代符号。同样按通常规定的字符串格式书写。替代符 号作为宏参数仅在被定义的宏中有效。 ▲ 每个宏最多可以用32个宏参数。 ▲ 宏可以嵌套,但宏的所有元素都应在同一个文件中定义。;,;,; .C —— C源文件 .ASM ——汇编文件 .CMD —— 命令文件 .H ——头文件 .PRJ ——工程文件 .LST —— 列表文件 .MAP ——映射文件 .OBJ——目标文件 .OUT ——可执行文件 ; COFF目标文件总是包括3个默认的段 : ▲ 文本段:用.text定义,通常包括可执行代码。 ▲ 数据段:用.data定义,通常包括已初始化的数据。 ▲ 预留段:用.bss定义,通常保留用于未初始化变量的空间。 用.usect,.sect或.asect伪指令可创建命名段。这些命名段可以像.text,.data一样被使用。 COFF有两种基本类型的段: ① 已初始化的段 —— 包含数据或代码。用.text和.data伪指令定义的段和 用.sect或.asect伪指令创建的命名段均为已初始化的段。 ② 未初始化的段—— 在内存映射中为未初始化数据保留空间。.bss段和用 .usect伪指令创建的命名段是未初始化的段,在目标文 件中这些段没有实际内容。;▲ 汇编器在汇编过程中建立这些段,链接器把段重定位到目标存储器中 ▲ 所有的段都是独立的、可定位的 ▲ 相同的段将按先后次序定位在连续的区域内 ▲ 未初始化段被定位到RAM内;初始化段可单独定位在RAM或ROM内, 并且在链接时还可引用其他段内定义的符号;▲ 链接器通过链接COFF目标文件建立可 执行文件, ▲ 目标文件中的段是链接时的重要依据。 ▲ 链接器可把段定位到用户系 统已配置的存储器中。 ▲ 链接器命令文件(.cmd)则给出链接器在链接时的有关信息 ▲ DSP芯片的存储器配置随应用 的不同而不同. 用链接器伪指令 MEMORY(存储器伪指令)可以确定目标系统的各种内存配置。 ▲ 当MEMORY决定了存储器模式后,可以用链接器伪指令SECTIONS (段伪指令)确定链接器组合输入段的方法和输出段在存储器中的位置。 ▲ 如果不使用这两条伪指令,链接器则用默认存储器的定位方式来组合段, 并把它们定位到存储器中。; 链接器命令文件 .cmd 链接器命令文件允许用户把链接信息放置在文件中。命令文件是ASCII文件,可以包含下列各项中的某一项: ▲ 输入文件名。该输入文件可以是目标文件、归档库或其他命令文件。 ▲ 链接器选项。在命令文件中可以用命令行上的链接器选项。 ▲ MEMORY和SECTIONS链接器伪指令。 ▲ 注释。用户可以使用/*和*/定界符把注释加到命令文件中。 ▲ 赋值语句。该语句定义并赋值给全局符号。;链接时给符号赋值;▲ 赋值表达式:链接器表达式必须遵循以下规则: √?表达式可包含全局符号、常数,以及表8-3-1所列的C语言运算符。 √ 所有数被当做长整数(32位)处理。 √ 链接器用和汇编器相同的方式识别常数。见表8-3-2. √表达式中的符号只具有符号的地址值,不进行类型检查。 √ 链接器表达式可以是绝对的或可重定位的。;▲ MEMORY伪指令;PAGE: √定义一个存储器空间,用户可以定义多达255页。 √ PAGE0定义程序存储器,PAGE1定义数据存储器, PAGE2定义I/O空间。 √如果用户没有使用PAGE选项,那么链接器把段定位到PAGE0。 √每个PAGE代表一个完全独立的地址空间。 √在PAGE0上已配置的存储器可以和在PAGE1上已配置的存储器重叠。;属性:可选项,当被使用时,必须用括号括起来。属性把输出段的定位限制在某 些

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档