和dsp原理及应用tmscx的汇编语言程序设计讲稿.pptxVIP

和dsp原理及应用tmscx的汇编语言程序设计讲稿.pptx

  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文档。上传文档
查看更多
第5章 TMS320C54x的汇编语言程序设计5.5 重复操作程序5.6数据块传送程序5.7小数运算程序5.8浮点运算程序5.5 重复操作程序单指令重复操作程序示例:【例5.5.1】对数组进行初始化,使x[8]={0,0,0,0,0,0,0,0}。 .bss x, 8 STM #x, AR1 LD #0, A RPT #7 STL A,*AR1+ .bss x, 8 STM #x, AR1 RPTZ A, #7 STL A, *AR1+注意: ① 对x[8]中的8个元素置0,重复次数为7,即执行1次STL A,?AR1+指令后,再重复执行7次;② RPTZ指令设定重复次数后,再对累加器清零。 块重复操作:块指令重复操作程序示例:【例5.5.2】对数组x[8]中的每一元素加1。;设置数组空间;立即数1送入BH;设置重复次数,BRC=7,循环8次;数组首地址x送入AR4;设置循环结束地址;数组数据左移16位与BH相加;存入数组结果,并修改地址;B清0 .bss x, 8begin: LD #1,16,B STM #7,BRC STM #x,AR4 RPTB next-1 ADD *AR4,16,B,A STH A,*AR4+next: LD #0,B …注 意① 块结束地址REA通常取程序块最后一条指令的下一条指令地址-1;② 重复次数为7次③ RPTB指令可以响应中断。 5.6 数据块传送程序5.6 数据块传送程序16位定点Q法和S法的表数范围Q法S法表数范围Q15S0.15-1≤x≤0.9999695Q14S1.14-2 ≤x ≤1.9999390Q13S2.13-4 ≤x ≤3.9998779Q12S3.12-8 ≤x ≤7.9997559Q11S4.11-16 ≤x ≤15.9995117Q10S5.10-32 ≤x ≤31.9990124Q9S6.9-64 ≤x ≤63.9980469Q8S7.8-128 ≤x ≤127.9960938Q7S8.7-256 ≤x ≤255.9921875Q6S9.6-512 ≤x ≤511.984375Q5S10.5-1024 ≤x ≤1023.96875Q4S11.4-2048 ≤x ≤2047.9375Q3S12.3-4096 ≤x ≤4095.875Q2S13.2-8192 ≤x ≤8191.75Q1S14.1-16384 ≤x ≤16383.5Q0S15.0-32768 ≤x ≤327675.7 小数运算程序定点DSP的小数表示法基于2的补码形式;数的定标有Q法和S法;C54X为16位:1位符号位,Q个小数位和15-Q个整数位。乘以32768绝对值部分取反加1乘以32768取反加1绝对值部分5.7 小数运算程序定点DSP的小数表示法基于2的补码形式;数的定标有Q法和S法;C54X为16位:1位符号位,Q个小数位和15-Q个整数位。十进制小数的2的补码表示正数:乘以32768;负数:绝对值乘32768,再取反加1。0.54000H-0.54000HC000H-18000H8000H乘以327680101(0.625)1000(-0.125)×0000000000001101(-0101)(-0.078125)1101000符号位扩RCT=1时110100000.0781255.7 小数运算程序小数乘法设字长为4位(累加器为8位),有如下小数乘法: 0.625×-0.125乘积结果为7位,送入累加器;为保持乘积的符号不变,必须进行符号位扩展;因而,经过符号扩展后累加器内容为8位:(-0.1865)出现了冗余的符号位(两个符号位)!怎么办?ST1的FRCT小数方式控制位,可以控制乘积结果在送往累加器前是否自动左移1位!如FRCT=1,则可自动消去两个符号位中冗余的一个。5.7 小数运算程序【例5.7.1】求 ,数据全为小数。 a1=0.3,a2=0.2,a3=-0.4,a4=0.1 x1=0.6,x2=0.5,x3=-0.1,x4=-0.2分析存储空间要求?采用何种指令?小数如何表示?冗余符号位的消去:需预留9个存储单元 典型的乘-累加运算:MAC与RPT指令结合 0.3=3*32768/10 SSBX FRCT .title Ex_571.asm .mmregsstack .usect STACK, 10H .bss a,4 .bss x,4 .bss y,1 .def start .datatable: .word 3*32768/10,2*32768/10,- 4*32768/10,1*32768/10 .word 6*32768

文档评论(0)

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

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

1亿VIP精品文档

相关文档