表5-1 C64xx DSP指令系统的基本指令表.
指令名 语法 举例 功能
ABS ABS ( .unit) src1, dst
.unit = L1,.L2 ABS .L1 A1, A5 求绝对值
ADD(U) ADD (.unit) src1,src2, dst
ADDU(.L1 or.L2) src1,src2, dst
ADD(.D1 or.D2)src2,src1, dst
.unit=.L1, .L2, .S1, .S2 ADD.L2X A1,B1,B2
ADDU.L1 A1,A2A5,A4
ADD.D1 26,A1,A6 符号加法、无符号加法
ADDAB/
ADDAH/
ADDAW论文网http://www.751com.cn/
ADDAB(.Unit)Src2,Src2,Src1,dst
ADDAH(.Unit)Src2,Src1,dst
ASSAW(.Unit)Src2,Src1,dst
.Unit=.D1或.D2 ADDAB.D1 A4,A2,A4
ADDAH.D1 A4,A2,A4
ADDAW.D1 A4,A2,A4 使用寻址模式的整数加法
ADDK ADDK(.Unit)cst, dst
.Unit=.S1或.S2 ADDK.S1 1540,A1 使用16位有符号常数的整数加法
ADD2
ADD2(.Unit)Src1,Src2,dst
.Unit=.S1或.S2 ADD2.L1X A1,B1,A2 高低两半16位寄存器加法
AND AND(.Unit)Src1,Src2,dst
.Unit=.L1或.L2,.S1或.S2 AND.L1X A1,B1,A2
AND.L1 15,A1,A3 逻辑与
B B(.Unit)label
.Unit=.S1.或S2 B.S1 LOOP
ADD.L1 A1,A2,A3
||ADD.L2 B1,B2,B3
LOOP;MPY,MJX A3.B3,A4
||SUB.D1 A5,A6,A6 跳转(使用标号)
B B(.Unit)Src2
.Unit=.S2 B.S2 B10
ADD.L2 A1,A2,A3
||ADD.L2 B1,B2,B3
MPY.MIX A3,A3,A4 跳转(使用寄存器)指令名 语法 举例 功能
BIRP B(.Unit)IRP原文请加辣~文^论,文'网QQ3249.114
.Unit=.S2 假设中断发生在
PC=00001000 IRP=00000000
B.S2 IRP
ADD.S2 A0,A2,A1
MPY.M1 A1,A2,A1
NOP
SHR.S1 A1,I5,A1
ADD.L1 A1,A2,A1
ADD.L2 B1,B2,B3 中断跳转
B NRP B(.Unit)NRP
.Unit=.S2 假设中断发生在
PC=0000100
NRP=00001000
B.S2 NRP
ADD.S1 A01,A2,A1
MPY.M1 A1,A0,A1
NOP
SHR.S1 A1 I5,A1
ADD.L1 A1,A2,A1
ADD.L2 B1,B2,B3 跳转(使用NMI返回指针)
CLR CLR(.Unit)Src2,csto,cstb,dst
CLR(Unit)Src2,Src1,dst
.Unit=.S1或S2 CLR.S1 A1,4.19,A2
CLR,S2 B1,B3,B2 清除原操作数的某一段位
CMPEQ CMPEQ(.Unit)Src1,Src2,dst
.Unit=.L1或.L2 CMPEQ.L1X A1,B1,A2
CMPEQ.L1 Ch,A1,A2论文网http://www.751com.cn/
CMPEQ.L2X A1,B5,B2.B1 判断Src1和Src2是否相等
CMPGT
(U) CMPGT(.Unit)Src1,Src2,dst
CMPGT(U)(.Unit)Src1,Src2,dst
.Unit=.L1 or.L2 CMPLT.L1 A1,A2,A3
CMPLT.L1X A1,B1,A2
CMPLTU.L1 0EH,A3,A2,A4 判断Src1是否大于Src2
CMPLT
(U) CMPLT(.Unit)Src1,Src2,dst
CMPLT(.Unit)Src1,Src2,dst
.Unit=.L1 or .L2 CMPLT.L1X A1,B1,B2
CMPLT.L1X A19,A1,A2
CMPLTU.L1 A1,A5,A4,A2 判断Src1是否小于Src2
EXT EXT(.unit)src2,csta,cstb,dst
EXT(.unit)src2,src1,dst原文请加辣~文^论,文'网QQ32.49114
.unit=.S1 or.S2 EXT.S1 A1,10,19,A2
EXT.S1 A1,A2,A3 符号扩展
EXTU EXTU(.unit)src2,csta,cstb,dst
EXTU(.unit)src2,src1,dst
.unit=.S1 or.S2 EXTU.S1 A1,10,19,A2
EXTU.S1 A1,A2,A3 零扩展