TMS320C54x指令系统

TMS320C54x指令系统

ID:44263639

大小:642.50 KB

页数:60页

时间:2019-10-20

TMS320C54x指令系统_第1页
TMS320C54x指令系统_第2页
TMS320C54x指令系统_第3页
TMS320C54x指令系统_第4页
TMS320C54x指令系统_第5页
资源描述:

《TMS320C54x指令系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第三章:TMS320C54x指令系统汇编源程序的书写格式7种寻址方式4种基本类型的汇编语言指令。教学要求:C54xDSP的指令系统包括汇编语言指令、汇编伪指令、宏指令,本章主要介绍C54x的7种寻址方式和汇编语言指令,其他指令将在第4章介绍。了解汇编源程序的书写格式,掌握常见的7种寻址方式,尤其是间接寻址方式。掌握算术运算、逻辑运算、程序控制、存储和装入4种基本类型的汇编语言指令。C54x汇编语言语句格式如下(4个部分):[标号][:]指令[操作数列表][;注释]begin:LD#40,AR1;将立即数40传送给ARl其中:(1)标号供本程序的其他部分或其他程序调用。(2)指令域包括以

2、下指令码之一:•助记符指令(如STM,MAC,MPVD,STL);•汇编伪指令(如.data,.list,.set);•宏指令(如.macro,.var,.mexit);•宏调用。注:作为助记符指令,一般用大写;汇编伪指令和宏指令,以句点“.”开始,且为小写。(3)操作数可以是常量、符号,或是常量和符号的混合表达式,操作数之间用逗号分开。汇编器允许在操作数前使用前缀来指定操作数(常数、符号或表达式)是地址还是立即数或间接地址。前缀包括#,*,@前缀#表示其后的操作数为立即数。例如:Label:ADD#123,A将立即数123加到累加器A上前缀*表示其后的操作数为间接地址。例如:Labe

3、l:LD*AR4,A以AR4的内容为地址,将该地址的内容装入累加器A前缀@表示其后的操作数采用直接寻址的地址。例如:ADD#10,@XYZ将立即数10加到变量XYZ中。(4)注释可以从一行的任一列开始直到行尾。任一ASCII码(包括空格)都可以组成注释。如果注释从第一列开始,用“;”号或“*”号开头。TMS320C54x的指令系统符号和意义见表3-1–p51寻址方式:指当CPU执行指令时,寻找指令所指定的参与运算的操作数的方法。作用:可以根据程序要求采用不同的寻址方式,以提高程序的速度和代码效率。不同的寻址方式为编程提供了极大的柔性编程操作空间,C54x共有7种基本寻址方式立即寻址绝对

4、寻址累加器寻址直接寻址间接寻址存储器映像寄存器寻址堆栈寻址寻址指令中用到的缩写符号及其含义缩写符号含义Smem16位单数据存储器操作数Xmem在双操作数指令及某些单操作数指令中所用的16位双数据存储器操作数,从DB总线上读出Ymem在双操作数指令中所用的16位双数据存储器操作数,从CB总线上读出;在读同时并行写的指令中表示写操作数dmad16位立即数——数据存储器地址(0~65535)pmad16位立即数——程序存储器地址(0~65535)PA16位立即数——I/O口地址(0~65535)src源累加器(A或B)dst目的累加器(A或B)lk16位长立即数1.立即寻址含义:指令中已包含

5、有执行指令所需的操作数;用途:主要用R或M的初始化;说明:①在数值或符号前加‘#’表示立即数;②立即数有两种形式:短和长(3,5,8,9;16)例如:LD#10,A;立即数10→A累加器RPT#99;将紧跟在后面的语句重复99+1次2.绝对寻址含义:指令中包含所需寻址的M单元地址或I/O端口地址;用途:利用16位地址寻址M或I/O说明:绝对寻址的四种类型①数据存储器寻址:用符号或者数来表示数据存储器地址(dmad)如:MVKDDATA,*AR5将DATA地址单元的数据传送到AR5寄存器所指向的地址。②程序存储器寻址:用符号或者数来表示程序存储器地址(pmad)如:MVPDTABLE,*

6、AR7-(TABLE)→(AR7)andAR7=AR7-1③I/O端口寻址用符号或者数来表示I/O空间的一个地址如:PORTRFIFO,*AR5;从端口FIFO读数据→(AR5)PORTW*AR2,BOFO;将(AR2)→BOFO端口其中FIFO和BOFO是I/O端口地址的标号④*(1K)寻址:用一个符号或常数确定一个数据存储器的地址长立即数*(lk)寻址用于所有支持单数据存储器操作数(Smem)的指令。如:LD*(BUFFER),A(BUFFER)→A注:访问数据空间的任意单元而不改变DP的值*(1K)不能和循环指令RPT,RPTZ一起使用。3.累加器寻址含义:用累加器的数据作为地址

7、来读写程序存储器;用途:累加器对存放数据的程序存储器寻址;说明:①累加器的内容低N位是程序存储器的地址;②仅有两条指令用该寻址方式:READA;WRITA;如:READASmem以A中的数为地址,从PM中读一个数→由Smem所指的DM中;4.直接寻址含义:用指令中包含的数据M地址的低7位+基地址→16位数据存储器地址。基地址:DP__数据页指针SP__堆栈指针用途:利用数据页指针和堆栈指针寻址数据存储器指令代码格式:第7位确定了寻址方式,若I=

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

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

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