conv.asm

来自「用TI DSP汇编指令进行程序设计:“TIC54XDSP汇编程序设计-卷积」· 汇编 代码 · 共 228 行

ASM
228
字号
		.global		_main      
		.mmregs

		.text
_main:
		ssbx	ovm
		ssbx	sxm
		rsbx	cpl	
		ld		#32,dp		;1000h  
				
		;------------calculate first 8 points----------------
		stm	#y,ar3
		nop
		nop
		nop
		
lpn1:	ldm ar3,a		;ar1=#x+(ar3-#y) start
		

		

		stlm a,ar1	;ar1=#x+(ar3-#y) finish
		nop
		nop
		nop
		
		and #0,a
		nop
		nop
		nop
				
		stm #h,ar2
		nop
		nop
		nop
		
lpk1:	ld *ar2+,t
		nop
		nop
		nop
		
		mpy	*ar1-,b
		nop
		nop
		nop
		
		add b,a
		nop
		nop
		nop
		
		ldm ar1,b
		nop
		nop
		nop
		
		sub #x,b		;judge ar1<=#x?
		nop
		nop
		nop
		
		bc lpk1,bgeq	;lpk1
		nop
		nop
		nop
		
		stl a,*ar3+
		nop
		nop
		nop
		
		ldm	ar3,b		;judge ar3-#y<8?
		nop
		nop
		nop
		
		sub	#8,b
		nop
		nop
		nop
		
		sub #y,b
		nop
		nop
		nop
		
		bc lpn1,blt	;lpn1
		nop
		nop
		nop
		
		;-----------calculate other 7 points-----------------
lpn2:	stm #(x+7),ar1	;ar1=#x+7
		nop
		nop
		nop
		
		ldm ar3,b		;ar2=#h+(ar3-#y-7) start
		nop
		nop
		nop
		
		sub #7,b
		nop
		nop
		nop
		
		sub #y,b
		nop
		nop
		nop
		
		add #h,b
		nop
		nop
		nop
		
		stlm b,ar2		;ar2=#h+(ar3-7) finish
		nop
		nop
		nop

		and #0,a
		nop
		nop
		nop
				
lpk2:	ld *ar2+,t
		nop
		nop
		nop
		
		mpy	*ar1-,b
		nop
		nop
		nop
		
		add b,a
		nop
		nop
		nop
		
		ldm ar2,b		;judge ar2>=#h+7?
		nop
		nop
		nop
		
		sub #h,b
		nop
		nop
		nop
		
		sub #7,b
		nop
		nop
		nop
				
		bc lpk2,bleq	;lpk2
		nop
		nop
		nop
		
		stl a,*ar3+
		nop
		nop
		nop
		
		ldm	ar3,b		;judge ar3-#y>15?
		nop
		nop
		nop
		
		sub	#15,b
		nop
		nop
		nop
		
		sub #y,b
		nop
		nop
		nop
		
		bc lpn2,blt	;lpn2
		nop
		nop
		nop
		
out0:

stop	b stop


		.data
x		.equ    $
		.word   1
		.word	2
		.word	3
		.word	4
		.word	5
		.word	6
		.word	7
		.word	8
h		.equ	$
		.word   1
		.word	2
		.word	3
		.word	4
		.word	5
		.word	6
		.word	7
		.word	8
y		.equ	$
		.word   0
		.word	0
		.word	0
		.word	0
		.word	0
		.word	0
		.word	0
		.word	0
		.word   0
		.word	0
		.word	0
		.word	0
		.word	0
		.word	0
		.word	0
		

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?