- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[信息与通信]4-DSP第四章汇编语言程序开发工具
第四章汇编语言程序开发工具 光电学院 乐燕芬 Le_yf@163.com 内容提要 可编程DSP芯片开发需要一套完整的软、硬件开发工具。通常可分成代码生成工具和代码调试工具两大类。 代码生成工具:将高级语言或汇编语言编写的DSP程序转换成可执行的DSP芯片目标代码的工具程序,主要包括汇编器、链接器和C编译器以及一些辅助工具程序等。 代码调试工具:包括C/汇编语言源码调试器、仿真器等。 本章主要介绍代码生成工具,包括’C54x软件开发流程、汇编语言程序的编写、汇编和链接过程、COFF段的一般概念、汇编器和链接器处理段的方法以及程序的重定位等。 4-1 软件开发流程 选择编程语言编写源程序 汇编语言 C/C++语言 选择开发工具和环境 非集成开发环境 集成开发环境CCS 4-2 开发工具 TI公司提供的DSP开发环境和工具主要包括以下三个部分 代码生成工具 C编译器、汇编器、链接器、文档管理器 代码调试工具 C/汇编语言源码调试器、软件仿真器、初学者工具DSK 实时操作系统 4-3 汇编语言程序的编辑、汇编和链接过程 4-3 汇编语言程序的编辑、汇编和链接过程 编辑 汇编语言源程序可以在任何一种文本编辑器中进行 必须经过汇编和链接后才能运行 汇编 用汇编器ASM500,对一个或多个源程序分别进行汇编,并生成列表文件(.lst)和目标文件(.obj) 常用的汇编命令 asm500 %1 -s -l -x 链接 用链接器LNK500,根据链接器命令文件(.cmd)对一个或多个目标文件(.obj)进行链接,生成输出文件(.out)和存储器映像文件(.map) 常用的链接命令 lnk500 %1.cmd 4-4 COFF文件 汇编器和链接器生成的目标文件,是一个可以由’C54x器件执行的文件。该文件格式称之为公共目标文件格式(COFF,common object file format) 段(sections) 存储器中占据相邻空间的代码或数据块。 汇编器和链接器提供一些伪指令来建立和管理各种各样的段。 一个COFF文件包含的基本段: .text 段(文本段),通常包含可执行代码; .data 段(数据段),通常包含初始化数据; .bss 段(保留空间段),通常为未初始化变量保留存储空间 4-4 COFF文件 段 初始化段 包含有数据或程序代码。主要有: .text段——已初始化段; .data段——已初始化段; .sect段——已初始化段,由汇编器伪指令建立的自定义段 未初始化段 在存储空间中,为未初始化数据保留存储空间 .bss段——未初始化段; .usect段——未初始化段,由汇编命令建立的命名段(自定义段) 4-4 COFF文件 段与目标存储器的对应关系 汇编器的任务:根据汇编命令用适当的段将各部分程序代码和数据连在一起,构成目标文件。 链接器的任务:分配存储单元,将目标文件中的段重新定位到目标系统的存储器中,这一过程称为定位或分配。 4-4 COFF文件 未初始化段 这些段定义的空间仅作为临时存储空间,在程序运行时,可利用这些存储空间存放变量 .bss 符号, 字数 符号—对应于保留的存储空间第一个字的变量名称。可以让其他段引用。也可以用.global命令定义为全局符号。 符号 .usect “段名”, 字数 段名—程序员为未初始化的命名段定义的名字 .bss buffer,8 STACK .usect “stack”,1000 4-4 COFF文件 已初始化段 已初始化段中包含有可执行代码或初始化数据。 这些段中的内容都在目标文件中,当加载程序时再放到’C54x的存储器中。 已初始化段由.text、.data和.sect三个伪指令建立。 4-4 COFF文件-汇编器对段的处理 段程序计数器SPC 汇编器为每个段都安排了一个单独的程序计数器--SPC SPC表示在程序代码或数据段内当前的地址。开始时汇编器将每个SPC置0。当汇编器将程序代码或数据加到段内时,增加相应的SPC值。 链接器在链接时要对每个段进行重新定位。 4-4 COFF文件-汇编器对段的处理 例:段命令应用举例 经汇编后得列表文件(部分) 4-4 COFF文件-链接器对段的处理 链接器对段处理的2个任务: 将一个或多个COFF目标文件中的各种段作为链接器的输入段,经链接后在一个执行的COFF输出模块中建立各个输出段; 在程序装入时对其重新定位,为各个输出段选定存储器地址。 链接器的2条伪指令 MEMORY伪指令—定义目标系统的存储器配置空间, SECTIONS伪指令—指定链接器将输入
您可能关注的文档
- [信息与通信]001GEpon培训系统原理和硬件介绍.ppt
- [企业管理]黄翰林《总裁选人用人留人新智慧》课堂讲义.ppt
- [信息与通信]011honeywell方案.doc
- [信息与通信]02B01---FLASH模块.pdf
- [信息与通信]02TCP-IP协议.ppt
- [信息与通信]03-梁从主OpportunityandChallengeofPowerSupplyEngineersinSolidStateLightingSystem.pdf
- [信息与通信]03PROFIBUS总线.ppt
- [信息与通信]04-宝利通产品简介.ppt
- [信息与通信]053G综合开发技术及应用.pdf
- [信息与通信]05微电子工艺基础氧化工艺.ppt
文档评论(0)