因为dsp有汇编语言部分,所以有必要再温习一下汇编。TMS320C54x提供7中基本寻址方式。
1、立即数寻址:指令中有一个固定的立即数。例如 LD #10,A,将立即数10传送至累加器A。主要用于初始化。
2、绝对地址寻址:指令中有一个固定的地址(16位)。例如 STL A,*(y),将累加器低16位存放到变量y所在的存储单元中。利用16位地址寻址存储单元。
3、累加器寻址:按累加器的内容作为地址去访问程序存储器中的一个单元。例如 READA x,将累加器A作为地址读程序存储器,并存入变量x所在的数据存储器单元。
4、直接寻址:指令编码中含有的7位地址与DP或SP一起合成数据存储器中操作数的实际地址。例如 LD @x,A,将DP+x的低7位地址的内容传给累加器A。利用数据页制作和堆栈指针寻址。
5、间接寻址:通过辅助寄存器寻址。例如 LD * AR1,A,将AR1的内容传给A。利用辅助寄存器作为地址指针。
6、存储器映射寄存器寻址:修改存储器映射寄存器中的值,而不影响当前数据页面指针DP和堆栈指针SP的值。例如 LDM ST1,B,将ST1的内容装入累加器B。用于快速寻址存储器映射寄存器。
7、堆栈寻址:把数据压入或弹出