[工学]第七章_DSP的汇编伪指令.pptVIP

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

第七章 汇编程序语法 TMS320的汇编程序包含: 1.汇编语言指令(assembly language instructions)、 2. 汇编指令(伪指令,assembler directives)、 3. 宏指令(macro directives) 4. 注释(comments)。 1. 汇编代码和数据到指定的段; 2. 为未定义的变量保存空间; 3. 控制列表文件; 4. 分配存储器; 5. 汇编条件块; 6. 定义全局变量; 7. 指定汇编器能得到的宏; 8. 检查符号调试信息。 伪指令前为小数点。 伪指令在运行时不起作用,汇编及调试时起作用。 伪指令是实质是指挥控制汇编器汇编。 汇编语言工具 TMS320的汇编语言工具是一个软件包,其中包括: 汇编器(Assembler) 将汇编语言的源程序文件汇编成为机器语言的目标程序文件,其格式为COFF(公用目标文件格式)。汇编语言源程序可以包括汇编语言指令(instruction)、汇编指令(assembler directives)和宏指令(macro directives)。 连接器(Linker) 连接器的基本任务是将目标文件连接在一起,产生可执行模块。连接器可以接受的输入文件包括汇编器产生的COFF目标文件、命令文件、库文件、以及已部分连接好了的文件。它所产生的可执行COFF目标模块可以装入各种开发工具,或由TMS320器件来执行。 归档器(Archiver) 归档器允许用户将一组文件归入一个档案文件(库)。例如,将若干个宏归入一个宏库,汇编器将搜索这个库,并调用源文件中使用的宏。也可以用归档器将一组目标文件收入一个目标文件库,连接器将连接库内的成员,并解决外部引用。 交叉引用列表器 (Cross-Reference Lister) 交叉引用列表器是一个查错的工具。它接受已经连接好的目标文件作为输入,产生一个交叉引用列表作为输出。它列出符号、符号的定义、以及它们在已经连接的源文件中的引用。 十六进制转换公用程序 (Hex Conversion Utility) 将COFF目标文件转换成为若干种标准的文件格式: 1.ASCII-十六进制 2.Extended Tektronix 3.Intel MCS-86 4.Motorola Exorciser 5.TI SDSMAC 公共目标文件格式 汇编器和链接器产生的目标文件,是一个可以在TMS320 DSP上执行的文件,称为公共目标文件格式(Common Object File Format),缩写为COFF。 由于COFF在编写汇编语言程序时采用代码和数据块的形式,因此便于模块化的编程,这些代码和数据块称为段。所谓段是指连续占有存储空间的一个数据或代码块。 在编写汇编语言源程序时,程序按段组织,每行汇编语句都从属一个段。段是目标文件中可重新定位的最小单元,每个目标程序中的每个段通常是分开的和各不相同的。 COFF中至少包含以下三个默认段: .text段(文本段)通常包含可执行代码; .data段(数据段)通常包含己初始化的数据; .bss段(保留空间段)通常为未初始化的数据保留空间。 段有两种基本类型,已初始化段和未初始化段. 1.未初始化段仅仅在目标系统存储器中保留空间,以供程序运行过程的变量作临时存储空间使用,可由汇编伪指令.bss和.uset创建。 2.己初始化段包含可执行代码或者已初始化数据,这些段的内容存储在目标文件中,当程序装入时存放在存储器中。每个己初始化段可独立地进行重定位,且可以访问在其他段中重定义的符号。 自定义段由用户自己定义,和默认段的使用相同,但它们被单独汇编,可由以下3个指令来创建自定义段: 符号.usect“段名”,字数 符号.sect“段名”,字数(建立的块可重定位) 符号.asect“段名”,地址(建立具有绝对地址的块) .usect建立的段是在RAM中为变量保留空间(类似于.bss段),.sect建立的是包含代码或数据的段(类似于.text段和.data段)。 汇编器确定汇编语言程序的各个部分属于哪一个特定的段,汇编器有六个命令来完成这种功能,即:用于创建未初始化段.bss, .usect和用于创建已初始化.text, .data, .sect,.asect,如果程序未作说明,则统一汇编到.text段中。 链接器的主要功能是将段定位至目标存储器中。确定段地址的工作一般由链接器来完成,由于大部分系统一般包含多个不同类型的存储器(EPROM RAM等),采用段可以使用户更有效地利用目标存储器,所有的段可以独立进行定位。

文档评论(0)

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

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

1亿VIP精品文档

相关文档