[2018年最新整理]DSP汇编指令3-典型指令.pptVIP

[2018年最新整理]DSP汇编指令3-典型指令.ppt

  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文档。上传文档
查看更多
[2018年最新整理]DSP汇编指令3-典型指令

第三章 汇编语言指令 DSP指令的汇编句法格式为: 操作码 [ 操作数 ] ;[ 注释 ] 其中操作码为由可描述指令特征的助记符表示,它规定了指令的操作功能;在操作数中定义了该句法表达式中所用的变量以及寻址方式;注释是为便于阅读而对指令作的说明。 例如,加法指令的句法有: ADD dma[,shift];直接寻址 ADD dma,16;左移16位直接寻址 ADD ind[,shift[,ARn]];间接寻址 ADD ind,16[,ARn];左移16位间接寻址 ADD # k;短立即寻址 ADD # lk[,shift];长立即寻址 以上指令中,ADD表示作加法操作。后面的操作数可以是常数,也可以是引用存储器、I/O端口、寄存器地址、指针、移位次数和其他各种常数的汇编表达式。 3.3 典型指令说明指令 1、数据存储器至数据存储器间的块传送: BLDD # lk,dma;源地址为长立即数,直接寻址 BLDD # lk,ind[,ARn];源地址为长立即数,间接寻址 BLDD dma, # lk;目标地址为长立即数,直接寻址 BLDD ind,# lk [,ARn];目标地址为长立即数,间接寻址 该指令将数据存储器中的一块源数据字连续地复制到指定的目的数据存储单元中。 例1 BLDD #300h,20h;(DP=6)(地址为0300h~037Fh) 例2 BLDD *+,#321h,AR3; 2、从端口输入数据 IN dma,PA;直接寻址 IN ind,PA[,ARn];间接寻址 PA:16位I/O端口或I/O影射的寄存器地址。 IN指令从I/O单元读入16位值到指定的数据存储单元,引脚IS非变为低电平,表示访问I/O口,STRB、W/R非和READY时许与读外部数据存储器一样。 该指令不受任何状态位影响。 例1 IN 7,1000h; 从口地址为1000h的外设读数据,并将数据存至数据存储器单元307h(DP=6) IN *,5h; 从口地址为5h的外设读取数据,并将数据存于当前辅助寄存器所指定的数据存储器单元。 3、左移后装入累加器: LACC dma[,shift];直接寻址 LACC dma,16;直接寻址并左移16位 LACC ind[,shift[,ARn]]间接寻址 LACC ind,16[,ARn];间接寻址并左移16位 LACC # lk,[shift];长立即寻址 第一条到第四条指令将指定的数据存储器地址的内容左移(shift位或16位)后送入累加器。 第五条指令中的#lk是一个16位长的数据,不是地址。该条指令将数据左移后送入累加器。 在移位时,低位填0;高位受状态为SXM的影响;若SXM=1,则进行符号扩展;若SXM=0,则不进行符号扩展,填0即可。 例1 LACC 6,4;(DP=8:地址0400h~047Fh,SXM=0) 例2 LACC *,4;(SXM=0) 4、装载累加器低位并清累加器高位: LACL dma;直接寻址 LACL ind[,ARn];间接寻址 LACL # k;短立即寻址 第一条和第二条指令被寻址数据存储器单元的内容装入累加器的低16位,累加器的高位填0。第三条指令将8位短立即数#k扩展为16位(高位补0)并装入累加器的低16位,累加器的高位填0。 无论SXM为何状态,该指令都不进行符号扩展。 例1 LACL 1;(DP=6) LACL *—,AR4; 5、装载辅助寄存器: LAR ARx,dma;直接寻址 LAR ARx,ind[,ARn];间接寻址 LAR ARx,# k;短立即寻址 LAR ARx,# lk;长立即寻址 第1、2条指令将指定的数据存储器地址中的内容装入指定的辅助寄存器地址(ARx)。 第3、4条指令将8/16位的常量装入指定的辅助寄存器地址(ARx)。无论SXM为何值,指定的常量无符号处理。 LAR和SAR(存储辅助寄存器)指令可在自程序调用或中断处理时用来装载和存储辅助寄存器。若一个辅助寄存器没有用于间接寻址,则LAR和SAR指令可将该辅助寄存器用作附加的存储寄存器,从而可实现在不影响累加器的前提下依次交换数据存储器单元中数。 例1 LAR AR0,10;(DP=6) 例2 LAR AR4,*—;指令中指定的AR与ARP指令的AR相同,则不减 例3 LAR AR4,#01h; 6、装载数据页指针: LDP dma;直接寻址 LDP ind[,ARn];间接寻址 LDP # k;短立即寻址 第1、2条指令将指定的数据存储器单元的低9位(LSB)装入状态寄存器ST0的数据存储页指针(DP)。 第3条指令将9位立即数装入状态寄存器ST0的数据存储页指针(DP)。 DP也可由LST指令装入。 在直接寻址方式中,DP提供9位页面地址(位于

文档评论(0)

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

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

1亿VIP精品文档

相关文档