杭电研一课件12、指令.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文档。上传文档
查看更多
杭电研一课件12、指令

第九章 TMS320C54软件结构 三、指令系统 1. 算术运算指令(79条分为6小类) (1) 加法指令(13条)《表3-6》 加法指令举例 (2) 减法指令(13条)《表3-7》 减法指令举例 (3) 乘法指令(10条)《表3-8》 乘法指令举例 (4) 乘加和乘减指令(15条)《表3-9》 (5)长操作数指令(6条)《表3-10》 (6)特殊应用指令(15条)《表3-11》 有限冲击响应滤波器 第一类线性相位的充要条件 2. 逻辑指令(5小类) 3. 程序控制指令(7小类) (1) 分支指令(6条)《表3-14》 (2)调用和返回指令(6条)《表3-15》 (3)重复指令(5条)《表3-16》 (4)中断指令(2条)《表3-17》 (5)堆栈操作指令(5条)《表3-18》 4. 存储和装入指令( 8小类) 单个循环指令 * * 本章学习目标 掌握各种寻址方式 掌握常用指令 会分析常用汇编语言程序结构 ? 算术运算指令 ? 逻辑运算指令 ? 程序控制指令 ? 存储和装入指令 TMS320C54X共有129条指令 按功能分为4大类(每大类又分为若干小类) * 指令书写方式:助记符/表达式 ? 加法指令(ADD) ? 减法指令(SUB) ? 乘法指令(MPY) ? 乘加指令(MAC)和乘减指令(MAS) ? 双数/双精度指令(DADD、DSUB) ? 特殊操作指令(ABDST、SQDST) ① 不同的加法指令用途不同; ADD:不带进位; ADD :不带进位、移位; ADDC:带进位; ADDM:专用于立即数; ADDS:无符号数; ② 表中的src是累加器 【例3.1】 ADD *AR3+, 14, A;将AR3所指的数据存储单元内容,左移14位与A相加,结果放A中,AR3加1。 ST1-8符号位扩展 ①SUBS用于无符号数的减法运算; SUBB用于带借位的减法运算(如32位扩展精度的减法); SUBC为条件减法 。 注:被除数和商共用一个R → B:随着B的左移被除数逐渐退出,商从右→左逐渐进入。 ②使用SUBC重复16次减法,就可以完成除法功能。 被除数-(除数15):够减:被除数左移,商+1; 不够减 :被除数左移,商+0; ?LD TEMP1, B ;将被除数TEMP1装入B累加器的低16位 RPT #15 ;重复SUBC指令16次 SUBC TEMP2, B ;使用SUBC指令完成除法 STL B, TEMP3 ;将商(B累加器的低16位)存入变量TEMP3 STH B, TEMP4 ;将余数(B累加器的高16位)存入变量TEMP4 【例】利用SUBC完成整数除法(TEMP1/TEMP2) ? RPT #15 ;重复SUBC指令16次 SUBC *AR3 , B ① 不同的乘法指令完成不同的功能 MPY:普通乘指令; MPYR:带四舍五入指令; MPYA: A累加器高端参与乘法; MPYU:无符号乘法; SQUR:平方; ② 小数乘法 将FRCT设置为1,系统自动将乘积结果左移1位。 【例3.2】 MPY 13,A; T*Smem →A, Smem所在的单数据存储器地址为13(0Dh) 【例3.3】 MAC *AR5+,A ; A+(AR5)*T→A, AR5= AR5+1 【例3.4】 DADD *AR3+, A, B ;If C16=0 dst= Lmem + src (长字运算:AR3+2) 双精度工作模式 高16位 ? 求绝对值 ? 求累加器指数 ? 求累加器的最大/小值 ? 归一化 ? 求多项式的值 ? 求两点之间距离的平方 ? 求最小均方值 ? 对称有限冲击响应滤波器等 ? 一旦循环流水线启动,指令成为单周期

文档评论(0)

181****2553 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档