⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exp4c54_1.asm

📁 用dsp解压mp3程序的算法
💻 ASM
字号:
*********************************************************************
* exp4c54_1.asm - An assembly program for C5000 CCS simulator
*                 Representing different Q formats in Section 4.6.1
*     
*********************************************************************
* Section allocation
*
		.def	 x,y,init_q15, init_q1_14, init_q2_13
x		.usect   "vars",12; reserve 12 locations for x
y		.usect   "vars",3	; reserve 3 locations for y


		.sect	 "table"
;init_q15	.int	 0.5*32768, 0.25*32768, 0.125*32768, 0.0625*32768
;init_q1_14	.int	 0.5*16384, 0.25*16384, 0.125*16384, 0.0625*16384
;init_q2_13	.int	 0.5*8192, 0.25*8192, 0.125*8192, 0.0625*8192
init_q15	.int	 16384, 8192, 4096, 2048
init_q1_14	.int	 8192, 4096, 2048, 1024
init_q2_13	.int	 4096, 2048, 1024, 512


		.text		; create code section
		.def	 start	; label of the beginning of code



* Copy data to vector x using indirect addressing mode

start:
	NOP
copy:	
	STM	#x,AR1		; AR0 pointing to x0
	RPT	#11      	; repeat next instruction 8 times
	MVPD    init_q15,*AR1+ 	; copy 8 data to x
	
* mode setting
	.mmregs
	SSBX SXM		; sign extention
	SSBX FRCT		; Operate in fractional mode
	SSBX OVM		; overflow mode set

* Add the first 4 data using direct addressing mode

add_q15:                        ; Q15 format
	
	STM #x, AR2
	RPTZ A, #3
	ADD *AR2+,16,A 
	STH A, *(y)

add_q1_14:                      ; Q14 format

	STM #x+4, AR2
	RPTZ A, #3
	ADD *AR2+,16,A 
	STH A, *(y+1)

add_q2_13:			; Q13 format
	
	STM #x+8, AR2
	RPTZ A, #3
	ADD *AR2+,16,A 
	STH A, *(y+2)
	
end:
	NOP
	B	end		; stop here

⌨️ 快捷键说明

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