ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:506.21KB ,
资源ID:18629674      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18629674.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(指令系统Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

指令系统Word文档格式.docx

1、例 MAR *, AR1; 选择AR1为当前辅助寄存器,ARP=1 LAR AR1, #208h; AR1=#208h ADD *, 8; ACC=ACC+(208h)*28 间接寻址间接寻址类型: * 地址不变 *+ AR= AR+1 当前AR中的地址加1 *- AR= AR-1 *0+ AR= AR+AR0 *0- AR= AR-AR0 *BR0+ AR= B(AR+AR0) 地址反向进位加,用于FFT *BR0- AR= B(AR-AR0)下一个辅助寄存器: 许多指令除了可以修改当前辅助寄存器的数值外,还可以指定下一个辅助寄存器,作为下一条指令的当前辅助寄存器。例. MAR *, AR1

2、 ; AR1为当前AR,即ARP=1 LT *+, AR2 ; T=(AR1), AR1=AR1+1, ARP=2 MPY * ; P=T*(AR2)=(AR1)*(AR2)间接寻址举例 ADD *, 8 ADD *+, 8, AR4 ADD *-, 8 ADD *0+, 8 ADD *0-, 8 ADD *BR0+, 8 ADD *BR0-, 8指令概述C24X指令分类表 : 86条 传送指令,算术操作,逻辑运算指令,分支转移指令1)累加器、算术和逻辑操作指令,26条2)辅助寄存器和DP操作指令,7条3)T寄存器、P寄存器和乘操作指令,20条4)跳转指令,12条5)控制指令,13条6)I/O

3、及数据存储器操作指令,8条7)汇编指令格式: 标号 指令(操作码) 操作数 ;注释1、累加器、算术、逻辑指令2、辅助寄存器指令3、T, P寄存器与乘法指令 4、分支转移指令5、控制指令6、/即存储器指令指令中常用符号表 AR:辅助寄存器 ACC:累加器 dma: DM地址低7位 DP:9位数据页面指针ind: 间接寻址方式 #:立即数shift: 左移位数 0-15 PA: 16位口地址shift2: 左移位数 0-7 pma: 16位程序地址ARn:指定的辅助寄存器 cond: 条件指令的条件( ):存储单元内容 :可选项汇编语言指令举例: 加法指令例如, 加法指令:ADD dma , sh

4、ift ;ADD dma, 16 ;左移16位直接寻址ADD ind , shift , ARn ;ADD ind, 16 , ARn ;左移16位间接寻址ADD #k ;短立即寻址ADD #lk , shift ;长立即寻址例. 指令 ADD *+, 0, AR0 功能: ACC=ACC+(AR), ARP=0执行前 ARP=4 AR4=302HDM: (302H)=2 ACC=2 C=X 执行后 ARP=0 AR4=303HACC=4 C=0 汇编语言指令(1)(1)ABS 累加器取绝对值(2)ADD累加器加(3)ADDC带进位累加器加(4)ADDS 抑制符号扩展的累加器加(5)ADDT:

5、 T寄存器指定移位次数的累加器加(6)ADRK 辅助寄存器加短立即数(7)AND 和累加器进行与操作(8)APAC: P加到ACC(9)B 无条件跳转(10)BACC 跳转到ACCL确定的地址(11)BANZ辅助寄存器非0跳转 语法: BANZ pma ,ind,ARn 例 BANZ PGM191,*-,AR0汇编语言编程例1将数据存储器60H-69H单元内容求和。MAR *,AR0 ;设AR0为当前ARLAR AR1,#09H ;10个单元,计数器LAR AR0,#60H ;初始单元AR0=#60H,地址指针LACC #0 ;和初值 ACC=0PGM191: ADD *+,AR1 ;累加,A

6、R0+1,下一当前AR为AR1BANZ PGM191,AR0 ;AR10 则循环, 且AR1=AR1-1;下一当前AR为AR0 ; ACC=0+(60H)+(61H)+(69H)汇编语言指令(2)(12)BCND无条件跳转(13)BIT 位测试(14)BITT: T寄存器指定测试(15)BLDD数据块移动(16)BLPD程序区到数据区的块移动(17)CALA: 调用ACC指定的子程序(18)CALL: 无条件调用子程序(19)CC条件调用(20)CLRC 控制位清0(21)CMPL:ACC取反 (22)CMPR 辅助寄存器AR与AR0比较(23)DMOV 数据移动(24)IDLE等待中断(25

7、)IN 从端口读入数据BITT指令: T寄存器指定位测试语法:1) BITT dma 2) BITT ind ,ARn功能:将DM单元中指定的位复制到状态寄存器ST1的TC位。指定的位对应于15-T(3:0)。例 BITT 00H ;(DP=6)执行后 (300H)=4DC8H 0100 DC8 T=1 D(15-1)=D14=1TC=1执行前 (300H)=4DC8HT=1TC=0BLDD指令:数据块移动 1) BLDD #lk, dma 2) BLDD #lk, ind , ARn 3) BLDD dma, #lk 4) BLDD ind,#lk , Arn说明:该指令实现DM到DM的块移

8、动,第一个数指定源地址,第二个数指定目的地址。一旦启动了流水线,它就成为单周期指令。例子 BLDD #300h,20h; (DP=6)执行前: (300h)=0h (320h)=0fh执行后: (300h)=0h (320h)=0h汇编语言指令(3)(26)INTR 软件中断(27)LACC带移位的ACC装载(28)LACL 装载ACCL,ACCH=0(29)LACT 由T指定移位次数的ACC装载(30)LAR: Load AR 装载辅助寄存器(31)LDP: Load DP 装载DP(32)LPH: Load PH(33)LST: Load ST(34)LT: Load T(35)LTA:

9、Load T and Add(36)LTD装载T寄存器、累加前次乘积并移动(37)LTP装载T寄存器并将P送到ACC(38)LTS: Load T and Subtract(39)MAC: 乘累加MAC指令:语法 1) MAC pma, dma 2) MAC pma, ind , ARn功能:ACC=ACC+P, T=(DM), P=(PM)*(DM) = (PM)*T例 MAC 0FF00H, 08 ; (DP=6, PM=00) (308h)=23hPM: (FF00H)=4T= 23h P=8CHACC=76975b3hT= 45h P=458972h ACC=723EC41hMACD

10、指令:乘累加并移动数据语法 1) MACD pma, dma 2) MACD pma, ind ,ARn例 MACD 0FF00H, 08 ;ACC=ACC+P, T=(DM), P=(PM)*(DM), (DM+1)=(DM)执行前 执行后 (308h)=23h DM: (309h)=18h DM: (309h)=23h (FF00H)=4 PM:T= 45h T= 23h P=458972h P=8CHACC=723EC41h ACC=76975b3h 汇编语言指令(4)(40)MACD 乘累加并移动数据(41)MAR:Modify AR 修改辅助寄存器(42)MPY: Multiply

11、乘(43)MPYA:乘且累加前次积(44)MPYS:乘且减去前次积(45)MPYU:无符号乘(46)NEG:ACC取补码(47)NMI:Non Maskable Interrupt 非屏蔽中断(48)NOP: No Operation 空操作(49)NORM: ACC规格化(50)OR: 与ACC或运算(51)OUT:输出数据到端口(52)PAC: P送到ACC(53)POP栈定内容弹出到ACCL汇编语言指令(5)(54)POPD:POP to Data memory栈定内容弹出到数据存储器单元(55)PSHD:数据存储器单元压入堆栈(56)PUSH: ACCL压入堆栈(57)RET: 子程序

12、返回(58)RETC:条件返回(59)ROL: A循环左移(60)ROR: A循环右移(61)RPT:重复执行下一条指令(62)SACH: Store ACCH(63)SACL: Store ACCL(64)SAR: Store AR(65)SBRK: AR减去短立即数PSHD指令:语法: 1) PSHD dma 2) PSHD ind , ARn堆栈依次向下移动一级,指定存储器单元的内容复制到栈顶。堆栈底部的值丢失。例子 PSHD *, AR1ARP=1AR0=1FFH (1FFH)=12H硬件堆栈 12h 2h 33h 78h 99h 42h 50h 0hARP=0POPD指令: 栈定内容

13、弹出到存储器单元 1) POPD dma 2) POPD ind , ARn栈顶的内容复制到DM单元中。堆栈值依次向上复制一级。例子 POPD 20h ; (320H)=45H 16h 7h 42h 56h 37h 61h 61h (320H)=82H 45h 16h 7h 33h 56h 37h 61h汇编语言指令(6)(66)SETC 控制位置位(67)SFL:A左移(68)SFR: A右移(69)SPAC: A减P(70)SPH: Store PH (71)SPL: Store PL(72)SPLK:长立即数送到DM单元(73)SPM: 设置移位模式PM(74)SQRA: 乘方并累加前一

14、次乘积(75)SQRS:乘方并减去前一次乘积(76)SST: Store ST(77)SUB: ACC减(78)SUBB:带借位的:ACC减(79)SUBC条件减SPLK 指令: 1)SPLK #lk,dma 2)SPLK #lk, ind ,ARn 例子 SPLK #1111H,*+,AR4ARP=4AR0=301H (300H)=1111HAR0=300H (300H)=07H条件减指令用于除法运算语法格式: SUBC dma SUBC ind , ARn 移位相减实现除法:ACCL/(DM)=ACCL 余数ACCH 例. RPT #15 SUBC * ;执行情况16次A执行后 ARP=3

15、 AR3=1000H (1000H)=7 ACCH=2, ACCL=0009HA执行前 ACCH=0, ACCL=41H 65/7=9余数2汇编语言指令(7)(80)SUBS: 抑制符号扩展的累加器减 (81)SUBT: T确定移位的累加器减 (82)TBLR: Table Read 表读 1) TBLR dma; 2) TBLR ind , ARN 说明 :将PM单元中的内容复制到 指定的DM单元。(83)TBLW : Table Write 表写(84)TRAP 软件中断(85)XOR 与累加器进行异或操作(86)ZALR: ACCL=0,ACCH=8000H 累加器低位字清0, 高位字带舍入装载汇编语言编程例2查表程序0x9, 求y=x1/5 , x=0,1,2,9, y值用Q14格式 。设 x值在402H单元,查表y值送404H单元 LDP #8 LACC 2 ;(402H)ACC x ADD #TAB ;表首地址#TABTBLR 4 ;ACC(404H) y思考题与习题1.C24x DSP 有哪些寻址方式?2.直接寻址方式中,数据存储单元的地址是如何形成的?3.间接寻址方式中,数据存储单元的地址是如何形成的?间接寻址方式有哪些类型?4.C24x DSP 有哪几种类型的指令?5.编程将数据存储器300H-30AH单元内容求和。6.试编写一简单查表程序。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1