描述
TMS320F24X 指令集累加器、算术与逻辑指令附件
TMS320F24X 指令集累加器、算术与逻辑指令
| 助记符 |
指令描述 |
指令字 |
周期 |
| ABS |
ACC的绝对值 |
1 |
1 |
| ADD |
加给ACC,带0~15-bit移位,直接或间接 |
1 |
1 |
| 加给ACC,带0~15-bit移位,长立即数 |
2 |
2 |
| 加给ACC,带16-bit移位,直接或间接 |
1 |
1 |
| 加给ACC,短立即数 |
1 |
1 |
| ADDC |
加给ACC,带进位,直接或间接 |
1 |
1 |
| ADDS |
加给ACC低段,带符号展开抑制,直接或间接 |
1 |
1 |
| ADDt |
加给ACC,由TREG决定的移位,直接或间接 |
1 |
1 |
| AND |
ACC与数据值,直接或间接 |
1 |
1 |
| ACC与长立即数,带0~15- bit移位 |
2 |
2 |
| ACC与长立即数,带16- bit移位 |
2 |
2 |
| CMPL |
ACC取补 |
1 |
1 |
| LACC |
带移位0~15-bit装入ACC,直接或间接 |
1 |
1 |
| 带移位0~15-bit装入ACC,长立即数 |
2 |
2 |
| 带移位16-bit装入ACC,直接或间接 |
1 |
1 |
| LACL |
装入ACC的低段,直接或间接 |
1 |
1 |
| 装入ACC的低段,短立即数 |
1 |
1 |
| LACt |
装入ACC,由TREG决定的移位(0~15- bit),直接或间接 |
1 |
1 |
| NEG |
ACC取负 |
1 |
1 |
| NORM |
ACC内容归一化,间接 |
1 |
1 |
| OR |
ACC或数据值,直接或间接 |
1 |
1 |
| ACC或长立即数,带0~15- bit移位 |
2 |
2 |
| ACC或长立即数,带16- bit移位 |
2 |
2 |
| ROL |
ACC循环左移 |
1 |
1 |
| ROR |
ACC循环右移2 |
1 |
1 |
| SACH |
存高段ACC,带移位0~7- bit,直接或间接 |
1 |
1 |
| SACL |
存低段ACC,带移位0~7- bit,直接或间接 |
1 |
1 |
| SFL |
ACC左移 |
1 |
1 |
| SFR |
ACC右移 |
1 |
1 |
| SUB |
从ACC减,带移位0~15- bit,直接或间接 |
1 |
1 |
| 从ACC减,带移位0~15- bit,长立即数 |
2 |
2 |
| 从ACC减,带移位16- bit,直接或间接 |
1 |
1 |
| 从ACC减,短立即数 |
1 |
1 |
| SUBB |
从ACC带借位减,直接或间接 |
1 |
1 |
| SUBC |
条件减,直接或间接 |
1 |
1 |
| SUBS |
从ACC减,抑制符号展开,直接或间接 |
1 |
1 |
| SUBt |
从ACC减,由TREG决定的移位(0~15- bit),直接或间接 |
1 |
1 |
| 助记符 |
指令描述 |
指令字 |
周期 |
| XOR |
ACC异或数据值,直接或间接 |
1 |
1 |
| ACC异或长立即数,带0~15- bit移位 |
2 |
2 |
| ACC异或长立即数,带16- bit移位 |
2 |
2B |
| ZALR |
ACC低段置0,舍入后装入ACC高段,直接或间接 |
1 |
1 |
辅助寄存器指令
| 助记符 |
指令描述 |
指令字 |
周期 |
| ADRK |
常数加给AR,短立即数 |
1 |
1 |
| BANZ |
当前AR非0转移,间接 |
2 |
2 |
| CMPR |
当前AR与AR0比较 |
1 |
1 |
| LAR |
从指定的数据位置装入指定的AR,直接或间接 |
1 |
2 |
| 常数装入指定的AR,短立即数 |
1 |
2 |
| 常数装入指定的AR,长立即数 |
2 |
2 |
| MAR |
修改当前AR和>或ARP,间接(直接时无操作) |
1 |
1 |
| SAR |
存指定的AR至指定位置,直接或间接 |
1 |
1 |
| SBRK |
从当前AR减去常数,短立即数 |
1 |
1 |
暂时寄存器(TREG)、乘积寄存器(PREG)和乘法指令
| 助记符 |
指令描述 |
指令字 |
周期 |
| APAC |
PREG加到ACC |
1 |
1 |
| LPH |
装入PREG高位 |
1 |
1 |
| Lt |
装入TREG,直接或间接 |
1 |
1 |
| LTA |
装入TREG,累加前次乘积,直接或间接 |
1 |
1 |
| LTD |
装入TREG,累加前次乘积,搬移数据,直接或间接 |
1 1 |
1 1 |
| LTP |
装入TREG,存PREG入ACC,直接或间接 |
1 |
1 |
| LTS |
装入TREG,减去前次乘积,直接或间接 |
1 |
1 |
| MAC |
乘积累加,直接或间接 |
2 |
3 |
| MACD |
乘积累加,数据转移,直接或间接 |
2 |
3 |
| MPY |
TREG乘数据值,直接或间接 |
1 |
1 |
| TREG乘13- bit常数,短立即数 |
1 |
1 |
| MPYA |
乘且累加前次乘积,直接或间接 |
1 |
1 |
| MPYS |
乘且减去前次乘积,直接或间接 |
1 |
1 |
| MPYU |
乘无符号数,直接或间接 |
1 |
1 |
| PAC |
PREG装入ACC |
1 |
1 |
| SPAC |
从ACC减去PREG |
1 |
1 |
| SPH |
存高段PREG,直接或间接 |
1 |
1 |
| SPL |
存低段PREG,直接或间接 |
1 |
1 |
| SPM |
设置乘积移位模式 |
1 |
1 |
| SQRA |
平方且累加前次乘积,直接或间接 |
1 |
1 |
| SQRS |
平方且减去前次乘积,直接或间接 |
1 |
1 |
转移指令
| 助记符 |
指令描述 |
指令字 |
周期 |
| B |
无条件转移,间接 |
2 |
4 |
| BACC |
转移至ACC指定的地址 |
1 |
4 |
| BANZ |
当前AR非0时转移,间接 |
2 |
4 |
| BCND |
条件转移 |
2 |
4 |
| CALA |
调用ACC指定位置的子程序 |
1 |
4 |
| CALL |
调用子程序,间接 |
2 |
4 |
| CC |
条件调用 |
2 |
4 |
| INTR |
软中断 |
1 |
4 |
| NMI |
不可禁止的中断 |
1 |
4 |
| REt |
从子程序返回 |
1 |
4 |
| RETC |
条件返回 |
1 |
4 |
| TRAP |
软件中断 |
1 |
4 |
控制指令
| 助记符 |
指令描述 |
指令字 |
周期 |
| BIt |
位测试,直接或间接直接或间接 |
1 |
1 |
| BITt |
由TREG指定的位测试,直接或间接 |
1 |
1 |
| CLRC |
清除C位 |
1 |
1 |
| 清除CNF位 |
1 |
1 |
| 清除INTM位 |
1 |
1 |
| 清除OVM位 |
1 |
1 |
| 清除SXM位 |
1 |
1 |
| 清除TC位 |
1 |
1 |
| 清除XF位 |
1 |
1 |
| IDLE |
停止执行,直至中断 |
1 |
1 |
| LDP |
装入数据页指针,直接或间接 |
1 |
2 |
| 装入数据页指针,短立即数 |
1 |
2 |
| LSt |
装入状态寄存器ST0,直接或间接 |
1 |
2 |
| 装入状态寄存器ST0,直接或间接 |
1 |
2 |
| NOP |
无操作 |
1 |
1 |
| POP |
将堆栈顶弹出至ACC低段 |
1 |
1 |
| POPD |
将堆栈顶弹出至数据存储器,直接或间接 |
1 |
1 |
| PSHD |
将数据存储器的值压入堆栈,直接或间接 |
1 |
1 |
| PUSH |
将ACC低段压入堆栈 |
1 |
1 |
| RPt |
重复执行下一条指令,直接或间接 |
1 |
1 |
| 重复执行下一条指令,短立即数 |
1 |
1 |
| SETC |
设置C位 |
1 |
1 |
| 设置CNF位 |
1 |
1 |
| 设置INTM位 |
1 |
1 |
| 设置OVM位 |
1 |
1 |
| 设置SXM位 |
1 |
1 |
| 设置TC位 |
1 |
1 |
| 设置XF位 |
1 |
1 |
| SPM |
设置乘积位移模式 |
1 |
1 |
| SSt |
存状态寄存器ST0,直接或间接 |
1 |
1 |
| 存状态寄存器ST1,直接或间接 |
1 |
1 |
I/O 和存储器操作
| 助记符 |
指令描述 |
指令字 |
周期 |
| BLDD |
数据块从数据存储器搬移至数据存储器,直接或间接,长立即数作源存储器地址 |
2 |
3 |
| 数据块从数据存储器搬移至数据存储器,直接或间接,长立即数作目标存储器地址 |
2 |
3 |
| BLPD |
数据块从程序存储器搬移至数据存储器,直接或间接,长立即数作源存储器地址 |
2 |
3 |
| DMOV |
数据在数据存储器中搬移,直接或间接 |
1 |
1 |
| IN |
从I/O输入数据,直接或间接 |
2 |
2 |
| OUt |
输出数据至口,直接或间接 |
2 |
3 |
| SPLK |
存长立即数至数据存储器,直接或间接 |
2 |
2 |
| TBLR |
读数据表,直接或间接 |
1 |
3 |
| TBLW |
写数据表,直接或间接 |
1 |
3 |
打开APP阅读更多精彩内容