- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSP芯片技术及应用-宁波大学.ppt
;共四讲;汇编语言程序设计;段定义伪指令格式;其他常用伪指令(P58);一、编程案例 (y=x1+x2+x3+x4+x5); ST #4,x+3
ST #5,x+4
STM #x,AR1
STM #4,AR2
LD #0,A
loop: ADD *AR1+,A
BANZ loop,*AR2-
STL A,y
ch: B ch
.end
;编程常用格式; LD #0,A
STM #x,AR3
STM #4,AR2
loop: ADD *AR3+,A
BANZ loop,*AR2-
STL A,*(y)
end: B end
.end;链接命令文件;SECTIONS
{
.vectors:P_VECT PAGE 0
.text: PRG0 PAGE 0
.data: PRG1 PAGE 0
.bss : DA PAGE 1
.stack: DATA1 PAGE 1
};问题:;二、程序控制; RC TC
CC SUB1,BNEQ
BC NEXT,AGT,AOV
思考:怎样实现两条件相或?;堆栈的设置;堆栈使用举例;; CALL SUMB
end: B end
SUMB: LD *(x),A
ADD *(y),A
SUB *(w),A
STL A,*(z)
RET
.end;思考;;;;重复指令应用举例;块重复指令
STM #7, BRC
…..
RPTB next-1
ADD …
STH ….
next: LD …
….
;重复指令应用举例; LD #10H,16,B
STM #4,BRC
STM #x,AR3
STM #y,AR4
RPTB next-1
ADD *AR3+,16,B,A
STH A,*AR4+
next: LD #0,B
end: B end
.end;;5.6 数据传送程序;存储指令;数据块传送;程序存储器与数据存储器之间
RPT #7
MVPD table, *AR1+
数据存储器与数据存储器之间
RPT #7
MVDD *AR2+, *AR3+
(MVKD x, *AR3+)
(MVDK *AR2+ , y) ; ;乘法运算举例; .data
table: .word 3,5,15,20
.text
start:
STM #STACK+10,SP
STM #x1,AR1
RPT #3
MVPD table,*AR1+
CALL SUM
end: B end
;SUM: LD *(x1),T
MPY *(a1),B
LD *(x1+1),T
MAC *(a1+1),B
STL B,*(y)
STH B,*(y+1)
RET
.end;双操作数乘法;双操作数乘法举例;; LD #0,B
STM #19,BRC
STM #a,AR2
STM #x,AR3
RPTB done-1
LD *AR2+,T
MPY *AR3+,A
ADD A,B
done:STH B,*(y)
STL B,*(y+1)
end: B end
.end;;求最大值举例; .data
table: .word 1,5,3,4
.word 8,6,7,2
.text
start:
STM #STACK+10,SP
STM #a,AR1;;MAX:STM #a,AR2
STM #x,AR3
STM #2,AR1
MPY *AR2+, *A
文档评论(0)