收藏 分销(赏)

DSP汇编指令总结.doc

上传人:胜**** 文档编号:1504469 上传时间:2024-04-29 格式:DOC 页数:5 大小:67KB
下载 相关 举报
DSP汇编指令总结.doc_第1页
第1页 / 共5页
DSP汇编指令总结.doc_第2页
第2页 / 共5页
DSP汇编指令总结.doc_第3页
第3页 / 共5页
DSP汇编指令总结.doc_第4页
第4页 / 共5页
DSP汇编指令总结.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、DSP汇编指令总结一、寻址方式:1、立即寻址:短立即寻址(单指令字)D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D01011101101100011采用立即寻址方式的PRT的操作码8位常数99长立即数寻址(双指令字)第一指令字D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D01011111110010010采用长立即寻址方式的ADD指令的操作码(12位)位移次数2(4位)第二指令字D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0010000000000000016位常数163844000h2、直接寻址状态寄存器(

2、ST0)指令寄存器(IR)D15D13D12D11D10D9D8 D0D15 D8D7D6 D0ARPOVOVM1INTM数据页面指针DP8MSB07 LSB指令操作码页 面(9MSB)偏移量(7LSB)3、间接寻址D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D08MSBs1ARUNNARARU 辅助寄存器更新代码,决定当前辅助寄存器是否和如何进行增或减。N规定是否改变ARP值,(N=0,不变)NAR下一个辅助寄存器值ARU执行的算术运算654000*001*-010*+011100*BR0-101*0-110*0+111*BR0+4.3.1、算术逻辑指令(28条)

3、4.3.1.1、加法指令(4条);4.3.1.2、减法指令(5条);4.3.1.3、乘法指令(2条);4.3.1.4、乘加与乘减指令(6条);4.3.1.5、其它算数指令(3条);4.3.1.6、移位和循环移位指令(4条);4.3.1.7、逻辑运算指令(4条);4.3.2、寄存器操作指令(35条)4.3.2.1、累加器操作指令(6条)4.3.2.2、临时寄存器指令(5条)4.3.2.3、乘积寄存器指令(6条)4.3.2.4、辅助寄存器指令(5条)4.3.2.5、状态寄存器指令(9条)4.3.2.6、堆栈操作指令(4条)4.3.3、存储器与I/O操作指令(8条)4.3.3.1、数据移动指令( 4

4、条)4.3.3.2、程序存储器读写指令(2条)4.3.3.3、I/O操作指令(2条)4.3.4、程序控制指令(15条)4.3.4.1、程序分支或调用指令(7条)4.3.4.2、中断指令(3条)4.3.4.3、返回指令(2条)4.3.4.4、其它控制指令(3条)4.3.1、算术逻辑指令(28条)4.3.1.1、加法指令(4条); ADD ADDC(带进位加法指令) ADDS(抑制符号扩展加法指令) ADDT(移位次数由TREG指定的加法指令)4.3.1.2、减法指令(5条); SUB(带移位的减法指令) SUBB(带借位的减法指令) SUBC(条件减法指令) SUBS(减法指令) SUBT(带移

5、位的减法指令,TREG决定移位次数)4.3.1.3、乘法指令(2条); MPY(带符号乘法指令) MPYU(无符号乘法指令)4.3.1.4、乘加与乘减指令(6条); MAC(累加前次积并乘)(字数2,周期3) MAC(累加前次积并乘) MPYA(累加乘指令) MPYS(减乘指令) SQRA(累加平方值指令) SQRS(累减并平方指令)4.3.1.5、其它算数指令(3条); ABS(累加器取绝对值指令) NEG(累加器取补码指令) NORM(累加器规格化指令 )返回4.3.1.6、移位和循环移位指令(4条); SFL(累加器内容左移指令) SFR(累加器内容右移指令)ROL(累加器内容循环左移指

6、令)ROR(累加器内容循环右移指令)返回4.3.1.7、逻辑运算指令(4条); AND(逻辑与指令) OR(逻辑或指令) XOR(逻辑异或指令) CMPL(累加器取反指令)返回4.3.2、寄存器操作指令(35条)4.3.2.1、累加器操作指令(6条) LACC(装载累加器指令) LACT(装载累加器)*按TREG低4位指定的次数移位 LACL(装载累加器低16位指令) ZALR(装载累加器指令) SACL(移位并存储累加器低半部) SACH(移位并存储累加器高半部)返回4.3.2.2、临时寄存器指令(5条) LT(装载TREG指令) LTA(装载TREG并累加上次乘积指令) LTS (装载TR

7、EG并减去上次乘积指令) LTD(装载TREG并累加上次乘积及数据移动指令) LTP(装载TREG和累加器指令)返回4.3.2.3、乘积寄存器指令(6条) PAC (乘积寄存器内容载入累加器) APAC (PREG与累加器相加) SPAC(累加器和乘积寄存器相减) LPH(装载PREG高16位指令) SPL(存储PREG低16位指令) SPH(存储PREG高16位指令)返回4.3.2.4、辅助寄存器指令(5条) LAR(装载当前辅助寄存器AR) SAR(存储辅助寄存器指令) MAR(修改当前辅助寄存器) SBRK(从当前辅助寄存器减去短立即数)返回4.3.2.5、状态寄存器指令(9条) LST

8、(装载状态寄存器) SST(存储状态寄存器) SETC(控制位置“1”指令) SETC(控制位置“1”指令) LDP(装载数据指针DP指令) BIT(位测试指令) BITT(测试由TREG指定bit code指令) CMPR(比较当前辅助寄存器AR和AR0)返回4.3.2.6、堆栈操作指令(4条) PUSH(累加器低16位进栈指令) POP(栈顶内容弹出至累加器低16位指令) POP(栈顶内容弹出至累加器低16位指令) POPD(弹栈至数据存储器指令)返回4.3.3、存储器与I/O操作指令(8条)4.3.3.1、数据移动指令( 4条) DMOV(数据存储器内部数据移动指令) SPLK(存储长立

9、即数至数据存储器指令) BLDD(数据存储器内部的数据块移动) BLPD(从程序存储器到数据存储器的数据块传送)4.3.3.2、程序存储器读写指令(2条) TBLR(读程序存储器数据到数据存储器) TBLW(写程序存储器)4.3.3.3、I/O操作指令(2条) IN(数据输入指令) OUT(数据输出指令)4.3.4、程序控制指令(15条)4.3.4.1、程序分支或调用指令(7条) B(无条件转移指令) BANZ(辅助寄存器内容不等于零转移) CALL(无条件子程序调用指令) BACC(按累加器内容转移指令) CALA(由累加器指定地址的子程序调用指令) CC(条件调用指令)4.3.4.2、中断指令(3条) INTR(软中断指令) TRAP(软件陷阱中断) NMI(非屏蔽中断)4.3.4.3、返回指令(2条) RET(无条件从子程序或中断返回) RETC(条件返回指令)4.3.4.4、其它控制指令(3条) RPT(重复执行下条指令) NOP(空操作) IDEL(暂停)返回

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 应用文书 > 报告/总结

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服