3.汇编和指令.pptVIP

  1. 1、本文档共167页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.汇编和指令

Freescale(Motorola) 16位DSP原理及开发技术;由于多总线结构,DSP可实现指令的并行处理:;双重并行处理一例; 特殊寻址模式;立即数寻址;立即数寻址(续);执行后;地址寄存器直接寻址;寄存器间接寻址 MOVE A1,X:(Rn) 带事后加1的寄存器间接寻址 MOVE A1,X:(Rn)+ 带事后减1的寄存器间接寻址 MOVE X:(Rn)-,B1 带事后加寄存器N的间接寻址 MOVE X0,X:(Rn)+N 带寄存器N偏移量间接寻址 MOVE X1,X:(Rn+N) 带16位偏移量的寄存器间接寻址 MOVE Y0,X:(Rn+xxxx) 带R2 6位偏移量的寄存器间接寻址 MOVE A0,X:(R2+xx) 带SP 6位偏移量的寄存器间接寻址 MOVE A0,X:(SP-xx); (1)寄存器间接寻址;(2)带事后加1的寄存器间接寻址; (3)带事后减1的寄存器间接寻址; (4)带事后加N/减N的寄存器间接寻址;(5)带有偏移量的寄存器间接寻址; (6)带有偏移量的寄存器间接寻址(续);(7)带短置换的寄存器间接寻址;(8)带长置换的寄存器间接寻址;读取指令 F1 F2 F3 F3e F4 F5 F6 ... 指令译码 D1 D2 D3 D3e D4 D5 ... 执行指令 E1 E2 E3 E3e E4 ... 指令周期 1 2 3 4 5 6 7 ...; 流水线效应;附属 AGU 流水线效应案例;附属 AGU 流水线效应案例 (续);附属 AGU 流水线效应案例 (续);附属 AGU 流水线效应案例 (续);无附属AGU流水线效应案例 ;无附属AGU流水线效应案例(续);DSP56800系列的指令系统;1.定位伪指令ORG,用于指示汇编程序下一条待汇编指 令的地址值,起程序定位的作用。 如: ORG P:$1000 把由表达式决定的值赋给程序计数器,指令汇编 后应放在从程序空间$1000开始的存储单元中。如果 一个源程序中没有ORG伪指令,程序计数器的初始值 为$0000,即从0号单元开始汇编。 2.赋值管理指令EQU 如: REGBAS EQU $100 把100赋给REGBAS标号。 3.END (标号) 表示本汇编程序到此结束。标号可以是一个语 句标号,也可以是一个有效地址,表示程序运行的起 始地址,即程序从起始地址运行到此结束。;4.XDEF、XREF XDEF表示在本文件中定义可以被其他文件中的程序 调用的子程序。 XREF表示本子程序的定义在其他文件中。 XDEF ASM_ROUTINE XREF C_FUNCTION,BUSY_FLG ASM_ROUTINE BFSET #$0001,BUSY_FLG BCS BUSY JSR C_FUNCTION BFCLR #$0001,X:BUSY_FLG BUSY RTS; DSP56800系列的指令系统 (一)数据传送指令;一?、装载有效地址 LEA 汇编语法:LEA ea 所进行的操作是:ea D 首先对地址寄存器的内容做相应计算,然后再将 计算结果送入地址寄存器。 主要的操作有地址寄存器做加/减1,或者做加/ 减16位偏移量操作,或者用N寄存器的值做偏移 量刷新R0--R3中的值,具体如下页所示。此操作 对CCR无影响。 ;操作码 ;例如:LEA (R0)+N0 ;R0=R0+N0;二、数据传送指令 MOVE;例如: ASL A A,X:(R3)+N ;将移位前的A值存入X:(R3)中,A*2?A, R3+N? R3 执行前: 执行后:; 汇编语法:①op X:ea1,D1 X:ea2,D2 所进行的操作是:op X:ea1?D1 X:ea2?D2 汇编语法:② MOVE X:ea1,D1 X:ea2,D2 所进行的操作是: X:ea1?D1 X:ea2?D2 例如:MPYR X0,Y0,A X:(R0)+,Y0 X:(R3)+,X0 执行前:

文档评论(0)

xxj1658888 + 关注
实名认证
文档贡献者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档