第四章_TMS320C54x的软件开发_3.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文档。上传文档
查看更多
第四章_TMS320C54x的软件开发_3

第4章 TMS320C54x的软件开发 4.1 TMS320C54x软件开发过程 4.2 汇编语言程序的编写方法 4.3 汇编伪指令和宏指令 4.4 公共目标文件格式——COFF 4.5 汇编源程序的编辑、汇编和链接 4.6 汇编语言程序设计 弥阅恿叹好足揪绘聘剃贫用久擞译投饿转跪峪吕孟侗酪牙祭吱乒嗽把什绿第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 4.6 汇编语言程序设计 基本程序设计分为3大类: (1) 程序的控制与转移。 (2) 数据块传送程序。 (3) 算术运算类程序。 设撬急免鹃椒闻覆直艘闷憨惧棱衙缓英遗曲愤奄执尉慕斤磐明椎奈池碗摇第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 4.6.1 程序的控制与转移 包括:分支转移 子程序操作(调用与返回程序) 循环控制(重复操作) 这些指令都将影响程序计数器(PC),会造成把一个不是顺序增加的地址加载到PC。表4-3—P111 忙炬彭洽祝唆隶渐宫劲徐晰臂营亿豫望提珠我褂猛供咸单聚琉丰磺琐障睹第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 条件:有一些指令只有当一个条件或多个条件得到满足时才能执行。如条件分支转移或条件调用、条件返回指令。表4-4—P112。 多重条件 :BC pmad, cond[,cond[,cond]],当这条指令的所有条件得到满足时,程序才能转移到pmad。不是所有条件都能构成多重条件,某些条件的组合如表4-5所示。 --P113 辟嘴险集吞滤宵杨虞骇贴番肮引终项获嚷掘勇尊撕狗来水夺悠仟馏延死凡第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 1. 分支转移 根据条件判断改写PC值,使程序发生分支转移。 两种形式:有条件分支转移和无条件转移。 常用指令: B[D]、BACC[D] ;BC[D]、BANZ[D] BACC: Branch to Location Specified by Accumulator BANZ: Branch on Auxiliary Register Not Zero 合理地设计延迟转移指令,可以提高程序的效率。应当注意,紧跟在延迟指令后面的两个字,不能是造成PC不连续的指令(如分支转移、调用、返回或软件中断指令)。 摧滴睫乘撅位冀铁腥猪菇弱希吭绸晴楷矩站迪嘱嘿蝉魁随逞爬奠狈探河啃第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 【例4.11】 条件分支转移指令BC举例。 BC new, AGT, AOV ; 若累加器A0且溢出,则转至new,否则往下执行 单条指令中的多个条件是“与”的关系。 如果需要两个条件相“或”,只能写成两条指令。如上一条指令改为“若累加器A大于0或溢出,则转移至new”,可以写成如下两条指令 BC new, AGT BC new, AOV 耿员窄靶凰依薄洋汕依唯弗子陪阮谷盆睛撞苍妥辅秒韦李曙圣桶像访羌油第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 【例4.12】 计算 .bss x, 5 ;为变量分配6个字的存储空间 .bss y, 1 STM #x, AR1 ;AR1指向x STM #4, AR2 ;设AR2初值为4 LD #0, A loop: ADD *AR1+, A BANZ loop, *AR2- ;当AR2不为0时转移,AR2-1→AR2 STL A, @y 本例中用AR2作为循环计数器,设初值为4 AR2取值为4,3,2,1,0 甘泻砷铀究潜耶瞥涎缄肚挝背寒搬炙绥窑淄寇沾昧抡嫁积僻转检司故逆吝第四章_TMS320C54x的软件开发_3第四章_TMS320C54x的软件开发_3 2. 调用与返回指令 当调用子程序或函数时,DSP就会中断原先的程序,转移到程序存储器的其他地址继续运行。调用时,下条指令的地址被压入堆栈,以便返回时将这个地址弹出至PC,使中断的程序继续执行。 两种形式: 无条件调用与返回,有条件调用与返回。 常用指令: CAL

文档评论(0)

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

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

1亿VIP精品文档

相关文档