TMS320C24x指令说明和举例.docVIP

  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文档。上传文档
查看更多
TMS320C24x指令说明和举例

TMS320C24x指令说明及举例 徐丽红 .1 累加器、算术和逻辑运算指令 1. ABS 累加器取绝对值指令 语法:ABS 该指令对ACC的内容取绝对值,使进位位C=0。注意:8000 000H的ABS值与溢出方式位OVM有关,当OVM=0时,8000 000H的ABS值仍然 是8000 000H;当OVM=1时,8000 000H的ABS值是7FFF FFFFH。由于对8000 000H的操作有两种可能的结果,所以使溢出位OV=1。 例 1 如果(ACC)=0ABCH,执行指令: ABS 如果(ACC)=0ABCH,C=0。 例 2 如果(ACC)=0ABC0,执行指令: ABS 如果(ACC)=5440 0000H,C=0。 2. ADD 累加器加运算指令 语法: ADD dma[,shift] 直接寻址 ADD dma,16 直接寻址并左移16位 ADD ind[,shift[,ARx]] 间接寻址 ADD ind,16[,ARx] 间接寻址并左移16位 ADD #k 短立即寻址 ADD #1k[,shift] 长立即寻址 该指令将被寻址的数据存储器的内容或一个长立即数先左移(短立即数除外),再与累加器相加,结果存放在累加器中。移位时,低位填0,高位在符号扩展位SXM=1时扩展符号,在SXM=0时填0。该指令影响C和OV位。支持立即寻址、直接寻址和间接寻址。 例 1 如果当前DP=4(寻址范围0200H~027FH),(203H)=0F94H, (ACC)=01F6H,SXM=0,执行指令: ADD 3H,1 即203H单元的内容先左移1位,再与ACC相加,结果 (ACC)=211EH,C=0。 例 2 如果当前DP=4(寻址范围0200H~027FH),ARP=4,AR4=203H,(203H)=0F94H,(ACC)=01F6H,SXM=0,执行指令: ADD *+,0,AR1 即以AR4辅助寄存器的内容作为地址,其指向的203H中的内容(左移0位)与ACC相加,结果(ACC)=211EH,C=0,ARP=1,AR4=204H。 例 3 如果(ACC)=01F6H,SXM=0,执行指令: ADD #10H 即短立即数10H与ACC相加,结果(ACC)=206H,C=0。 3. ADDC 累加器带进位加运算指令 语法: ADDC dma 直接寻址 ADDC ind[,ARx] 间接寻址 该指令不进行符号扩展,不能进行移位操作,进位位C参与加运算。运算结果影响C和OV位。支持直接寻址和间接寻址。 例 1 如果当前DP=6(寻址范围0300H~037FH),ARP=1,AR1=350H, (350H)=205H,(ACC)=0FFF FF00H,C=1,执行指令: ADDC * 即ACC与当前AR1指向的350H中的内容以及C相加, 结果(ACC)=106H,C=1,OV=0。 4. ADDS 累加器无符号加运算指令 语法: ADDS dma 直接寻址 ADDS ind[,ARx] 间接寻址 该指令不进行符号扩展,存储器中的操作数按无符号处理,不能进行移位操作,ACC的内容仍为有符号数。运算结果影响C和OV位。支持直接寻址和间接寻址。 例 1 如果当前DP=6(寻址范围0300H~037FH),(ACC)=30H, (301H)=0FF00H,执行指令: ADDS 1 即ACC与301H中的内容相加,结果(ACC)=0FF30H,C=0,OV=0。 5. ADDT 累加器按T寄存器移位加运算指令 语法: ADDT dma 直接寻址 ADDT ind[,ARx] 间接寻址 该指令通过T寄存器的低4位来决定加运算的数据的左移位数,移位后再与ACC相加。数据存储器的符号扩展由SXM位控制。运算结果影响C和OV位。支持直接寻址和间接寻址。 例 1 如果当前DP=6(寻址范围0300H~037FH),(ACC)=0A123H, (310H)=789H,T=6602H,当前ARP=1,AR1=310H,执行指令: ADDT * —,AR6 即AR1指向的310H单元的数据先左移2位,再与ACC相加, 结果(ACC)=0BF47H,(AR1)=309H,当前辅助寄存器为AR6,C=0,OV=0。 6. SUB 累加器减运算指令 语法: SUB dma[,shift] 直接寻址 SUB dma,16 直接寻址且左移16位 SUB ind[,shift[,ARx]] 间接寻址 SUB ind[,shif

文档评论(0)

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

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

1亿VIP精品文档

相关文档