数字信号处理技术第五章汇编语言程序设计.pptVIP

  • 8
  • 0
  • 约7.86千字
  • 约 34页
  • 2020-01-29 发布于辽宁
  • 举报

数字信号处理技术第五章汇编语言程序设计.ppt

第5章 汇编语言程序设计举例: 5.1 数据块传送 例1:将数组X[5]={1,2,3,4,5}初始化 .data TAL: .word 1,2,3,4,5 .sect “.vectors” B START .bss x,5 .text START: STM #x,AR5 RPT #4 MVPD TAB,*AR5+ 例2:编写一段程序将数据存储器中的数组X[20]复制到 数组Y[20]中。 .bss x,20 .bss y,20 … STM #x,AR2 STM #y,AR3 RPT #19 MVDD AR2+,AR3+ 5.2 加减法和乘法运算 例3:编写完成 Z=X+Y-W的功能 LD @x,A;直接寻址 ADD @y,A SUB @w,A; A=A-@w STL A, @z 例4:编程实现 y=mx+b 的功能 LD @m,T MPY @x,A ADD @b,A STL A, @y 例5:编写实现 y=x1?a1+x2 ?a2的功能 LD @x1,T MPY @a1,B LD @x2,T MAC @a2,B STL B, @y STH B, @y+1 例6:找出y=?ai?xi(i=1,2,3,4)中乘机项ai?xi的最大值, 并存入累加器A中。 STM #a,AR1 STM #x,AR2 STM #2,AR3 LD *AR1+,T MPY *AR2+,A Loop1: LD *AR1+,T MPY *AR2+,B MAX A BANZ loop1,*AR3- 5.3 重复操作 例7:对一个数组初始化:X[5]={0,0,0,0,0} .bss x,5 STM #x,AR1 LD #0,A RPT #4 STL A,*AR1+ 或采用如下方法: .bss x,5 STM #x,AR1 RPTZ A, #4 STL A,*AR1+ 注意:执行重复操作时不响应任何中断 例8:对数组X[5]中的每个元素加1 .bss x,5 Begin: LD #1,16,B STM #4,BRC STM #X,AR4 RPTB next-1 ADD *AR4,16,B,A STH A,*AR4+ Next: LD #0,B …… 5.4 程序的控制与转移 例9:RC TC CC sub,BNEQ BC new,AGT,AOV 例10:计算 y= ? xi(i=1~5) .bss x,5 .bss y,1 STM #x,AR1 STM #4,AR2 LD #0,A Loop:ADD *AR1+,A BANZ loop,*AR2- STL A,@y 例11: STM #5,AR1 STM #10,AR0 Loop: …… *AR1+ …… CMPR LT,AR1;若(AR1)<(AR0),则TC=1 BC loop,TC;若TC=1,则转LOOP 5.5 堆栈的使用方法 在

文档评论(0)

1亿VIP精品文档

相关文档