DSP课件 第8讲_第3章寻址方式及指令系统_....ppt

DSP课件 第8讲_第3章寻址方式及指令系统_....ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSP课件 第8讲_第3章寻址方式及指令系统_....ppt

第3章 伪指令与宏指令 DSP汇编语言语法 伪指令 宏指令 汇编语言书写格式 [标号][:] 助记符 [操作数1,操作数2,…] [;注释] 标号域 助记符域 操作数域 注释域 TI DSP汇编语言书写规范 标号与变量必须从编辑窗口的第1列写,指令(包括伪指令)决不能从第1列开始,包括宏指令。例如某汇编源程序: _c_int0: SETC INTM CLRC SXM CLRC OVM CLRC CNF DSP源程序编程工具 在任何文本编辑工具下都可以编写源程序,例如,记事本、UltraEdit是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII 码,可以取代记事本,内建英文单字检查、C++ 及 VB 指令突显,可同时编辑多个文件,可开多窗口,搜寻替换以及无限制的还原功能。 DSP集成开发环境CCS包含文本编辑器。 C2??的伪指令 C2XX伪指令包括:段定义伪指令 、初始化常数伪指令、设置段程序计数器伪指令、引用文件伪指令、符号定义伪指令、存储器分配伪指令、段分配伪指令。 DSP编程要特别说明的几点 DSP 汇编程序(.asm)使用段定义伪指令分段书写,指令序列用代码段伪指令.text引导,数据变量用未初始化数据段伪指令.bss引导,数据常量用初始化数据段伪指令.data引导。 各种段在存储空间的定位由命令链接文件规定。命令链接文件后缀为.cmd。 还可以使用包含文件(.h)。包含文件伪指令使用形式 .include “file.h” 常用的段定义伪指令 .text 默认的初始化程序段,通常包含有可执行程序代码,存放于程序存储器区域 .data 默认的初始化数据段(程序或数据区) .bss 默认的未初始化数据段,通常是为未初始化的变量预留空间(于数据区)。格式为: .bss 变量符号,保留的字数 .sect——定义初始化后命名的段,常用于定义中断向量表。 .sect “段名” 常用初始化常数伪指令 定义字伪指令(定义整型数伪指令) 格式:.int /.word value1 [,…,valuen] 功能:在当前段连续存入1个或多个16位整数 定义字节伪指令 格式:.byte value1,[,…,valuen] 功能:在当前段连续初始化1个或n个字节 常用引用文件伪指令 包含伪指令 格式:.include [″]filename[″] 功能:将另一个文件包含到.include伪指令处的文件中。 定义全局符号伪指令 格式:.def /.global symbol1[,…, symboln] 功能:在当前模块定义一个或n个符号,供模块或其它模块使用。.def定义的符号是全局(外部)符号。 常用引用文件伪指令(续) 引用全局符号伪指令 格式:.ref symbol1[,…, symboln] 功能:引用一个或n个全局符号供本模块使用。 常用符号定义伪指令 等值伪指令(符号与数值等价伪指令) 格式:符号 .equ 数值 符号 .set 数值 注: .equ与.set等价可互换,常用.set 链接器命令文件(*.cmd) 用.MEMORY伪指令详细定义DSP器件内部及扩展存储器存储器起始地址和长度。 用.SECTIONS伪指令告诉链接器如何组合输入段以及在存储器何处存放。 MEMORY伪指令的表达式 MEMORY { PAGE0: NAME[属性]:origin(起始地址)=J0(绝对地址),length=L0(长度) PAGE1: NAME[属性]:origin(起始地址)=Jn(绝对地址),length=Ln(长度) } SECTIONS伪指令的表达式 SECTIONS: { 段名: [特性,特性,…] …… 段名: [特性,特性,…] } 特性表达式常用形式:{} NAME 其中,NAME是用户命名的“存储器块名” 2407_t1.cmd (2)SECTIONS说明 SECTIONS { .vectors : { } VECS PAGE 0 /* Interrupt Vector Table*/ ._c_int0 :{ }VECS PAGE 0 .pvecs : { } PVECS PAGE 0 /* Peripheral

文档评论(0)

cai + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档