乘法
T是T寄存器里面的,MPYR中R的意思是round四舍五入。MPYA中A的意思是把累加器A中的高17位和T中相乘放在dst,SQUR平方函数。*AR4+0%的意思是把AR4的内容加上AR0中的内容,且循环寻址。FRCT是小数模式。FRCT为1的时候,会向左平移两位。乘累加指令
ABS是取绝对值,CMPL是取反,EXP是求编码格式当中的指数放在T寄存器,FIRS是用来滤波的。NEG取负,NORM是归一化也是相当于移位操作。AND是与操作。ROL移位操作,
程序控制操作,一种叫跳转另一种是循环。B代表跳转操作。
B[D] D代表延时,因为跳转会打破流水线,保证不被打断就延时操作再跳转。BACC 跳转到C累加器里面的地址,还有条件跳转指令
重复指令,RPT指令(RPTB[D]可以执行一段程序重复的)
NOP什么都不敢,用来占位。reset是复位指令。RSBX N,SBIT(把ST的第几位清0操作)。最后是加载和存储的操作
dst代表A或者B累加器,src也是代表A或者B累加器
特殊的一些SXM是符号位扩展,如果为1,则需要符号位,OVB是如果有进到保护位就会为1
LDM MMR ,dst存储器映射寻址,LD 060H,B 需要设置DP值。而LDM 060H,B就是默认DP=0,存储的指令和加载指令不一样
前面的数组肯定不是地址,只可能是数字,累加器。
加载的时候,可以乘累加。加载的时候可以存储。存储的时候也可以进行加法或者减法。.word定义常量。MVMM是寄存器之间相互存。AR0-AR7的寄存器。例如MVMM AR0,AR1.READA是把程序空间放在数据空间,WRITA 是相反的。此外还有MVDP,MVPD指令。加载指令并不是将数据从寄存器移动到存储器,而是将数据从存储器转移到寄存器中。
MVDK D代表数据,K代表数据空间 所以是数据到数据