第3章__TMS320C54x的数据寻址方式

第3章__TMS320C54x的数据寻址方式

ID:46219544

大小:382.00 KB

页数:42页

时间:2019-11-21

第3章__TMS320C54x的数据寻址方式_第1页
第3章__TMS320C54x的数据寻址方式_第2页
第3章__TMS320C54x的数据寻址方式_第3页
第3章__TMS320C54x的数据寻址方式_第4页
第3章__TMS320C54x的数据寻址方式_第5页
资源描述:

《第3章__TMS320C54x的数据寻址方式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、寻址方式:寻找指令所指定的参与运算的操作数的方法根据程序的要求采用不同的寻址方式,可以有效地缩短程序的运行时间和提高代码执行效率C54x系列的寻址方式可以分为两类数据寻址程序寻址第3章TMS320C54x的数据寻址方式第3章TMS320C54x的数据寻址方式3.1立即寻址3.2绝对寻址3.3累加器寻址3.4直接寻址3.5间接寻址3.6存储器映象寄存器寻址3.7堆栈寻址寻址指令中用到的缩写符号及其含义缩写符号含义Smem16位单数据存储器操作数Xmem在双操作数指令及某些单操作数指令中所用的16位双数据存储器操作数,从DB总线上读出Ymem在双操作数指令中所用

2、的16位双数据存储器操作数,从CB总线上读出;在读同时并行写的指令中表示写操作数dmad16位立即数——数据存储器地址(0~65535)pmad16位立即数——程序存储器地址(0~65535)PA16位立即数——I/O口地址(0~65535)src源累加器(A或B)dst目的累加器(A或B)lk16位长立即数3.1立即寻址#指令中包括了立即操作数,操作数紧随操作码存放在程序存储器中,没有寻找数据地址的过程两种立即数编码短立即数:3、5、8或9位长立即数:16位短立即数指令编码为一个字长16位立即数的指令编码为两个字长用途:用于表示常数或对寄存器初始化在数字或

3、符号常数前面加一个“#”号,来表示立即数程序存储器操作码立即数F180LD#0F180H,A;将立即数F180加载到ALD#lk[,SHFT],dstExamples:LD#0,ARP;ARP=0(#k3)LD#3,ASM;ASM=3(#k5)LD#50,DP;DP=50(#k9)LD#1234,A;A=1234(#lk)STM#0FFFFH,IMR;IMR=FFFFH(#lk)IPTR15~7MP/MC6OVLY5AVIS4DROM3CLKOFF2SMUL+1SST+0处理器方式状态寄存器PMST的位结构状态寄存器ST1的位结构BRAF15CPL14XF1

4、3HM12INTM11010OVM9SXM8C167FRCT6CMPT5ASM4~0ARP15~13TC12C11OVA10OVB9DP8~0状态寄存器ST0位结构3.2绝对寻址指令中包括待寻址的存储单元的16位地址绝对地址编码长度总是16位,包含绝对寻址的指令编码至少为两个字有4种类型3.2绝对寻址3.2.1数据存储器(dmad)寻址3.2.2程序存储器(pmad)寻址3.2.3端口地址(PA)寻址3.2.4长立即数*(lk)寻址3.2.1数据存储器(dmad)寻址使用符号(符号地址)或一个表示16位地址的立即数来指明寻址的数据存储单元的16位绝对地址使用

5、数据存储器寻址的指令有:MVDKSmem,dmadMVDMdmad,MMRMVKDdmad,SmemMVMDMMR,dmadExamples:MVKDSAMPLE,*AR5MVKD1000H,*AR5dmadSmem3.2.2程序存储器(pmad)寻址使用符号(符号地址)或一个表示16位地址的立即数来给出程序空间的地址使用程序存储器寻址的指令有:FIRSXmem,Ymem,pmadMACDSmem,pmad,srcMACPSmem,pmad,srcMVDPSmem,pmadMVPDpmad,SmemExamples:MVPDTABLE,*AR7pmadSme

6、m3.2.3端口地址(PA)寻址使用一个符号(符号地址)或一个表示16位地址的立即数来给出外部I/O口地址使用端口地址的指令有:PORTRPA,Smem;Smem=port(PA)PORTWSmem,PA;port(PA)=SmemExamples:PORTRFIFO,*AR5PASmem3.2.4长立即数*(lk)寻址使用一个符号(符号地址)或一个表示16位地址的立即数来指定数据存储空间的一个地址适用于所有支持单数据存储器操作数(Smem)的指令Smem=*(lK)采用*(lk)形式的指令不能与单循环指令(RPT,RPTZ)配合使用Examples:LD*

7、(BUFFER),ALDSmem,dst试比较:LD#1000H,A;#1000H->A双字,立即LD*(1000H),A;(1000H)->A双字,绝对*(lk)3.3累加器寻址用累加器中的数值作为一个地址读写程序存储器共有两条指令:READASmem;Smem=prog(A)WRITASmem;prog(A)=Smem用于完成程序存储空间与数据存储空间之间的数据传输Examples:READA*AR0WRITA*AR1+3.4直接寻址指令中包含数据存储器地址(dma)的低7位,作为地址偏移量,结合基地址(由数据页指针DP或堆栈指针SP给出)共同形成16位

8、的数据存储器地址可在不改变DP或SP的情况下,对一页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。