[信息与通信]第4章TMS320C54x的数据寻址方式.pptVIP

[信息与通信]第4章TMS320C54x的数据寻址方式.ppt

  1. 1、本文档共55页,可阅读全部内容。
  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文档。上传文档
查看更多
[信息与通信]第4章TMS320C54x的数据寻址方式

第3章 TMS320C54x的数据寻址方式 3.1 立即寻址 3.2 绝对寻址 3.3 累加器寻址 3.4 直接寻址 3.5 间接寻址 3.6 存储器映象寄存器寻址 3.7 堆栈寻址 TMS320C54x DSP提供以下7种基本数据寻址方式。 (1)立即数寻址 (2)绝对地址寻址 (3)累加器寻址 (4)直接寻址 (5)间接寻址 (6)存储器映射寄存器寻址 (7)堆栈寻址 立即数寻址: 指令中嵌有一个固定的数 绝对地址寻址: 指令中有一个固定的地址 累加器寻址: 按累加器内的地址去访问程序存储器中的一个单元 直接寻址: 指令中的7bits是一个数据页内的偏移地址,而所在的数据页由数据页指针DP或SP决定。该偏移加上DP和SP的值决定了在数据存储器中的实际地址。 间接寻址: 按照辅助寄存器中的地址访问存储器。 存储器映射寄存器寻址: 修改存储器映射寄存器中的值,而不影响当前DP或SP的值。 堆栈寻址: 把数据压入和弹出系统堆栈。 3.1 立即数寻址 在立即数寻址方式中,指令中包括了立即操作数。 一条指令中可对两种立即数编码,一种是短立即数(3、5、8或9位),短立即数指令编码为一个字长。 另一种是16位的长立即数,16位立即数的指令编码为两个字长。 立即数寻址指令中在数字或符号常数前面加一个“#”号,来表示立即数。 短立即数寻址(单字指令) 在指令字中包括立即操作数 RPT #99 ;将下一条指令循环100次 ADD #0ffh,A ;将0ffh加给AccA 例: LD #0,ARP ;用立即数0,加到ST0【状态寄存器0】中的 三位指针位 LD #3,ASM ;用立即数3,加到ST1中的 5位累加器移位方式 长立即数寻址(双字指令) 指令字的后一个字是立即数(双字指令) ADD #1234h,A ;将#1234h加给 AccA LD #1234,A ; 3.2 绝对寻址 就是在指令之中包含有所要寻址的存储单元的16位地址。以下4种: 3.2.1 数据存储器(dmad)寻址 3.2.2 程序存储器(pmad)寻址 3.2.3 端口地址(PA)寻址 3.2.4 长立即数*(lk)寻址 3.2.1 数据存储器(dmad)寻址 使用数据存储器寻址的指令有: MVDK Smem, dmad MVDM dmad, MMR MVKD dmad, Smem MVMD MMR, dmad 数据存储器寻址使用符号(符号地址)或一个表示16位地址的立即数来指明寻址的数据存储单元的16位绝对地址。例如: MVKD SMAPLE,*AR5; SMAPLE是符号常数,代表数据存储单元地址;将数据存储器SMAPLE地址单元中的数据传送到由AR5辅助寄存器所指向的数据存储单元中。 3.2.2 程序存储器(pmad)寻址 使用程序存储器寻址的指令有: FIRS Xmem, Ymem, pmad MACD Smem, pmad, src MACP Smem, pmad, src MVDP Smem, pmad MVPD pmad, Smem 程序存储器(pmad)寻址使用符号(符号地址)或一个表示16位地址的立即数来给出程序空间的地址。例如,把程序存储器中标号为TABLE单元中的值复制到AR7所指定的数据存储器中去,指令可写为: MVPD TABLE,*AR7; TABLE是地址标号,程序存储单元地址;将程序存储器标号为TABLE地址单元中的数据传送到由AR7寄存器所指向的数据存储单元中。 3.2.3 端口地址(PA)寻址 使用端口地址的指令有: PORTR PA, Smem PORTW Smem , PA 端口地址(PA)寻址使用一个符号(符号地址)或一个表示16位地址的立即数来给出外部I/O口地址。例如: PORTR FIFO ,*AR5; FIFO是端口地址标号;从FIFO端口读入一个数据,将其存放到由AR5寄存器所指向的数据存储单元中。 3.2.4 长立即数*(lk)寻址 长立即数*(lk)寻址用于所有支持单数据存储器操作数(Smem)的指令。 长立即数*(lk)寻址使用一个符号(符号地址)或一个表示16位地址的立即数来指定数据存储空间的一个地址。例如,把数据空间中地址为BUFFER单元中的数据传送到累加器A,指令可写为: LD *(BUFFER),A; BUFFER是16位符号常数;将BUFFER符号所指的数据存储单元中的数,

文档评论(0)

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

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

1亿VIP精品文档

相关文档