亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? fir32_emac.s

?? freescale MAC DSP的算法庫(FFT
?? S
?? 第 1 頁 / 共 2 頁
字號:
mac.l 		a6,d5,<<,ACC0 				;ACC0+=a6*d5;
mac.l 		a6,d6,<<,-(a3),a6,ACC1 		;ACC1+=a6*d6; a6=*--pCurCoef;
 
mac.l 		a6,d6,<<,ACC0 				;ACC0+=a6*d6
 
.ENDBUFx:									;}//end if #3
											;}//end if #1
;//storing results
movclr.l 	ACC0,d6   						;d6=ACC0; ACC0=0;
move.l 		d6,(a0)+						;(*pCurY++)=d6;
movclr.l 	ACC1,d6      					;d6=ACC1; ACC1=0;
move.l 		d6,(a0)+						;(*pCurY++)=d6;
movclr.l 	ACC2,d6      					;d6=ACC2; ACC2=0;
move.l 		d6,(a0)+						;(*pCurY++)=d6;
movclr.l 	ACC3,d6      					;d6=ACC3; ACC3=0;
move.l 		d6,(a0)+						;(*pCurY++)=d6;
  
addq.l 		#4,d1							;//i+=4;
bra  		.FORi1							;//jumping to .FORi1
 
.ENDFORi1:									;}//end of outer loop #1

move.l		d0,d7							;d7=N%4;
andi.l		#3,d7							
move.l		d0,d5							;d5=N-d7+1;
sub.l		d7,d5							
addq.l		#1,d5							

moveq.l		#1,d1							;//i=1;
;//cycle of computing a "tail" of output samples from Y[N-N%4+1] to Y[N]
.FORi2:										;for(i=1; i<=N%4; i++){ //begin of outer loop #2
cmp.l		d7,d1							;//comparing i with N%4
bhi			.ENDFORi2 						;//if (i>N%4) then jump to .ENDFORi2

move.l 		68(a7),a6         				;pCurX=pX+d5;
lea 		(0,a6,d5.l*4),a1       
     
move.l 		(a2),a3          				;pCurCoef=pFIR->pFirCoef; 
//cycle of getting Y[d5]
moveq		#0,d2             					  
move.l 		(a3)+,d4        				;d4=*pCurCoef++;
.FORk21:									;for (k=0; k<d5; k++) { //begin of inner loop #4
move.l 		-(a1),d3         				;d3=*--pCurX
      
mac.l		d3,d4,<<,(a3)+,d4,ACC0 		;ACC0+=d3*d4; d4=*pCurCoef++;
addq.l 		#1,d2            				;//Incrementing k
cmp.l		d5,d2          					;//Comparing k with i
bcs 		.FORk21        					;//if (k<i) then jump to .FORk21
											;} //end of inner loop #4
;//Testing that History Buffer is filled => this is not first calling of this function
tst.l		12(a2)            					;if(pFIR->iFirHistoryCount>0)  { //if #4
beq 		.NEXTif								;//if (pFIR->iFirHistoryCount=0) then jump to .NEXTif
move.l		8(a2),a6	        
lea 		(-4,a6,d0.l*4),a4     				;pCurHistory=pFIR->pFirHistory+N-1;
      
move.l 		d5,d2            					;for(k=d5;k<N;k++)  { //begin of inner loop #5
.FORk22:                       					
cmp.l		d0,d2             					;//Comparing k with N
bcc			.NEXTif
move.l 		-(a4),d3         					;d3=*--pCurHistory
      
mac.l		d3,d4,<<,(a3)+,d4,ACC0			;ACC0+=d3*d4; d4=*pCurCoef++;
addq.l 		#1,d2            					;//Incrementing k
bra 		.FORk22              				;//jumping to .FORk2
.NEXTif:                      					;}//end of inner loop #5	
;// End of cycle of getting Y[d5] 
	
												;}//end if #4
movclr.l	ACC0,d6            					;d6=ACC0; ACC0=0;
move.l 		d6,(a0)+          					;(*pCurY++)=d6;
addq.l 		#1,d1								;//incrementing i
addq.l      #1,d5       						;//incrementing d5
bra 		.FORi2               				;//Jumping to .FORi2

.ENDFORi2:										;//end of outer loop #2
;//End of getting Y[1]..Y[N]

;//begin of getting Y[N+1]..Y[n]
move.l		76(a7),d7						;d7=n;//length of input and output arrays

cmpi.l		#4,d0							;//if (N>=4) then jump to .NMORE3
bcc			.NMORE3							;if (N<4) { //if #5

move.l		d0,d1							;d1=N+1;
addq.l		#1,d1
bra			.FORi4							;//jumping to .FORi4

.NMORE3:									;}//end if #5
;//if number of coefficients more and equal 4
move.l		d0,d1							;if (N>=4) { //if #6
addq.l		#4,d1							;d1=N+4

.FORi3:										;for (i=d1; i<=n; i+=4){ //begin of outer loop #3
cmp.l		d7,d1							;//comparing i with n
bhi			.ENDFORi3						;//if (i>n) then jump to .ENDFORi3

move.l 		(a2),a3							;pCurCoef=pFIR->pFirCoef;
move.l 		68(a7),a6         				;pCurX=pX+i-4;
lea 		(-16,a6,d1.l*4),a1

movem.l 	(a1),d3-d6						;d3=*pCurX++; d4=*pCurX++; d5=*pCurX++; d6=*pCurX; pCurX-=3;
move.l 		(a3)+,a6  						;a6=*pCurCoef++;
  
move.l 		d0,d2							;d2=N%4+4;
andi.l		#3,d2 
addq.l		#4,d2

cmpi.l		#4,d2							;if (d2=4){ //if #7
bne			.CYCLE_BEGIN2
addq.l		#1,d2							;d2+=1;
											;}//end if #7
.CYCLE_BEGIN2:
;//multiplying 4 input samples on first coefficient
mac.l 		a6,d6,<<,-(a1),d6,ACC3  	;ACC3+=a6*d6; d6=*--pCurX;
mac.l 		a6,d5,<<,ACC2           	;ACC2+=a6*d5;
mac.l 		a6,d4,<<,ACC1           	;ACC1+=a6*d4;
mac.l 		a6,d3,<<,(a3)+,a6,ACC0  	;ACC0+=a6*d3; a6=*pCurCoef++;
;//cycle of multiplying 8 input samples on 4 coefficients per iteration
.FORk4:    									;for(k=d2; k<=N; k+=4) { //begin of inner loop #6
cmp.l 		d0,d2    						;//comparing k with N
bhi    		.ENDFORk4						;//if (k>N) then jump to .ENDFORk4
 
mac.l 		a6,d5,<<,-(a1),d5,ACC3    	;ACC3+=a6*d5; d5=*--pCurX; 
mac.l 		a6,d4,<<,ACC2             	;ACC2+=a6*d4;
mac.l 		a6,d3,<<,ACC1             	;ACC1+=a6*d3;
mac.l 		a6,d6,<<,(a3)+,a6,ACC0    	;ACC0+=a6*d6; a6=*pCurCoef++;
 
mac.l 		a6,d4,<<,-(a1),d4,ACC3   	;ACC3+=a6*d4; d4=*--pCurX;
mac.l 		a6,d3,<<,ACC2            	;ACC2+=a6*d3;
mac.l 		a6,d6,<<,ACC1            	;ACC1+=a6*d6;
mac.l 		a6,d5,<<,(a3)+,a6,ACC0   	;ACC0+=a6*d5; a6=*pCurCoef++;
 
mac.l 		a6,d3,<<,-(a1),d3,ACC3    	;ACC3+=a6*d3; d3=*--pCurX;
mac.l 		a6,d6,<<,ACC2              	;ACC2+=a6*d6;
mac.l 		a6,d5,<<,ACC1     			;ACC1+=a6*d5;
mac.l 		a6,d4,<<,(a3)+,a6,ACC0  	;ACC0+=a6*d4; a6=*pCurCoef++;

mac.l		a6,d6,<<,-(a1),d6,ACC3    	;ACC3+=a6*d6; d6=*--pCurX;
mac.l 		a6,d5,<<,ACC2             	;ACC2+=a6*d5;
mac.l 		a6,d4,<<,ACC1             	;ACC1+=a6*d4;
mac.l 		a6,d3,<<,(a3)+,a6,ACC0    	;ACC0+=a6*d3; a6=*pCurCoef++;

addq.l 		#4,d2							;//k+=4;
bra  		.FORk4							;//jumping to .FORk4
 
.ENDFORk4:									;}//end of inner loop #6

move.l		d0,d2							;//k=(N-1)%4
subq.l		#1,d2
andi.l		#3,d2
;//cycle of multiplying 4 input samples on 1 coefficient per iteration
.FORk5:										;for(k=(N-1)%4; k>0; k--) { //begin of inner loop #7
cmpi.l		#0,d2							;//comparing k with 0
beq			.ENDFORk5						;//if (k=0) then jump to .ENDFORk5

mac.l		a6,d5,<<,ACC3				;ACC3+=a6*d5;
mac.l		a6,d4,<<,ACC2				;ACC2+=a6*d4;
mac.l		a6,d3,<<,ACC1				;ACC1+=a6*d3;
mac.l		a6,d6,<<,(a3)+,a6,ACC0		;ACC0+=a6*d6; a6=*pCurCoef++;

move.l		d4,d5							;d5=d4;
move.l		d3,d4							;d4=d3;
move.l		d6,d3							;d3=d6;

move.l		-(a1),d6						;d6=*--pCurX;
subq.l		#1,d2							;//decrementing k
bra			.FORk5							;//jumping to .FORk5

.ENDFORk5:									;}//end of inner loop #7

;//multiplying currently computing samples on coefficients and storing results
movclr.l	ACC0,d4							;d4=ACC0; ACC0=0;
move.l		d4,(a0)+						;(*pCurY++)=d4;
movclr.l	ACC1,d4							;d4=ACC1; ACC1=0;
move.l		d4,(a0)+						;(*pCurY++)=d4;
movclr.l	ACC2,d4							;d4=ACC2; ACC2=0;
move.l		d4,(a0)+						;(*pCurY++)=d4;
movclr.l	ACC3,d4							;d4=ACC3; ACC3=0;
move.l		d4,(a0)+						;(*pCurY++)=d4;

addq.l		#4,d1							;//i+=4
bra			.FORi3							;//jumping to .FORi3
.ENDFORi3:									;}//end of outer loop #3
											
move.l 		d7,d5							;d5=(n-N)%4;
sub.l		d0,d5    
andi.l		#3,d5
move.l		d7,d1							;d1=n-d5+1;
sub.l		d5,d1
addq.l		#1,d1
											;}//end if #6
;//computing a "tail" of output samples
.FORi4:										;for(i=d1; i<=n; i++) { //begin of outer loop #4
cmp.l  		d7,d1							;//comparing i with n
bhi 		.ENDFORi4 						;//if (i>n) then jump to .ENDFORi4

move.l 		68(a7),a6   					;pCurX=pX+i;
lea 		(0,a6,d1.l*4),a1
move.l 		(a2),a3       					;pCurCoef=pFIR->pFirCoef;

moveq		#0,d2             				;for(k=0;k<N;k++)  {//begin of inner loop #8
move.l 		(a3)+,d4         				;d4=*pCurCoef++;
.FORk41:	
move.l 		-(a1),d3         				;d3=*--pCurX;
mac.l		d3,d4,<<,(a3)+,d4,ACC0 		;ACC0+=d3*d4; d4=pCurCoef++;
addq.l 		#1,d2            				;//Incrementing k
cmp.l		d0,d2             				;//Comparing k with N
bcs 		.FORk41              			;//If (k<N) then jump to .FORk41
											;} //end of inner loop #8
movclr.l 	ACC0,d6            				;d6=ACC0; ACC0=0;
move.l 		d6,(a0)+          				;(*pCurY++)=d6;
addq.l 		#1,d1             				;//Incrementing i
bra 		.FORi4               			;//Jumping to .FORi4
.ENDFORi4:                     				;}//end of outer loop #4
;---====== Begin of History Buffer Loading ======---
sub.l		d0,d7
move.l		68(a7),a5
lea 		(4,a5,d7.l*4),a1					;pCurX=pX+N+1;
move.l 		8(a2),a4            				;pCurHistory=pFIR->pFirHistory;
moveq		#1,d1             					;for(i=1;i<N;i++)  
.FORbuf:
cmp.l		d0,d1             					;//Comparing i with N
bcc 		.ENDbuf	            				;//If (i=>N) then jump to .ENDbuf
move.l 		(a1)+,(a4)+      					;*pCurHistory++=*pCurX++;
addq.l 		#1,d1            					;//Incrementing i
bra 		.FORbuf             				;//Jumping to .FORbuf
.ENDbuf:                      					;}
subq.l	 	#1,d1            					;pFIR->iFirHistoryCount=N-1;
move.l 		d1,12(a2)        					; 	}//end 
; ---====== End of History Buffer Loading ======--

;-=Restoring values of used registers=-
lea			-4(a7),a7
move.l		(a7),d0
move.l		d0,MACSR
lea			4(a7),a7
movem.l 	(a7),d0-d7/a0-a6;
lea 		60(a7),a7
rts

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一区二区在线播放 | 日韩在线一区二区三区| 国产精品一区二区在线观看不卡| 91视频在线观看| 国产精品青草综合久久久久99| 性欧美大战久久久久久久久| 91丨九色丨尤物| 中文字幕五月欧美| 蜜臀a∨国产成人精品| 欧美日韩黄色一区二区| 亚洲激情综合网| 成人不卡免费av| 中文字幕在线观看不卡| 国产一区二区三区电影在线观看| 777色狠狠一区二区三区| 午夜在线成人av| 91麻豆精品国产91久久久久| 亚洲综合色噜噜狠狠| 欧美亚洲综合网| 亚洲3atv精品一区二区三区| 欧美巨大另类极品videosbest | 精品欧美一区二区久久 | 亚洲6080在线| 91精品久久久久久久99蜜桃| 亚洲成人黄色影院| 91精品国产欧美一区二区成人| 日韩中文字幕91| 欧美mv和日韩mv国产网站| 国产精品一线二线三线| 国产欧美视频一区二区三区| 成人精品视频一区二区三区| 自拍偷拍亚洲综合| 欧美日韩一级二级| 国产精品天天摸av网| 国产成人午夜视频| 亚洲乱码中文字幕| 欧美精品一二三| 国产乱码精品一区二区三区av | 欧美性大战久久| 蜜桃在线一区二区三区| 国产精品你懂的在线| 欧美亚洲国产一区在线观看网站 | 亚洲第一狼人社区| 久久日韩精品一区二区五区| 99久久精品免费看国产| 日日夜夜精品视频免费| 国产精品视频线看| 在线不卡免费欧美| 国产福利一区在线观看| 亚洲成a人v欧美综合天堂下载 | 亚洲国产人成综合网站| 久久久99免费| 欧美精选在线播放| 97久久久精品综合88久久| 蜜臀久久久久久久| 亚洲一区视频在线观看视频| 国产欧美日韩不卡免费| 日韩一区二区三区在线| 在线区一区二视频| 99视频一区二区三区| 国精产品一区一区三区mba桃花 | √…a在线天堂一区| 精品国产青草久久久久福利| 欧美日韩精品一二三区| 色综合久久久网| www.视频一区| thepron国产精品| 成人av免费网站| av一区二区不卡| 成人av网站在线| 99免费精品在线观看| 成人av片在线观看| 91视频在线观看| 色天天综合色天天久久| 91老司机福利 在线| av一区二区三区在线| 91免费视频观看| 91国产免费看| 4438x成人网最大色成网站| 欧美日韩免费一区二区三区 | 日本一区二区成人在线| 国产片一区二区| 亚洲欧美另类久久久精品| 中文字幕一区二区三区在线观看| 最新国产成人在线观看| 亚洲美女在线一区| 日韩黄色免费网站| 国产精品18久久久久久久网站| 不卡大黄网站免费看| 欧美伊人久久久久久午夜久久久久| 欧美美女网站色| 久久亚洲二区三区| 亚洲欧美偷拍三级| 免费av网站大全久久| 99久久综合狠狠综合久久| 欧美视频完全免费看| 久久综合久久综合九色| 一区二区三区四区视频精品免费 | 午夜一区二区三区在线观看| 久久精品av麻豆的观看方式| 99久久婷婷国产综合精品电影| 欧美三级日本三级少妇99| 日韩精品中文字幕一区二区三区| 国产精品久久久久永久免费观看| 午夜精品福利一区二区三区av| 国产精品伊人色| 91精品免费观看| 亚洲久本草在线中文字幕| 韩国精品在线观看| 欧美日韩一区国产| 亚洲少妇最新在线视频| 国产一区二区三区| 91精品国产一区二区三区蜜臀| 中文字幕在线观看一区| 国内久久精品视频| 欧美一区二区视频在线观看2020| 国产精品久久久久久久岛一牛影视 | 欧美色偷偷大香| 亚洲人xxxx| 97se狠狠狠综合亚洲狠狠| 久久免费偷拍视频| 久久精品国产在热久久| 一区二区三区久久久| 亚洲同性gay激情无套| 五月天一区二区三区| 国产精品一品视频| 久久综合九色综合97婷婷女人 | 9i看片成人免费高清| 国产亚洲精品超碰| 国产精品一区二区在线看| 日韩欧美一区在线观看| 日韩二区三区四区| 91麻豆精品国产综合久久久久久 | 婷婷亚洲久悠悠色悠在线播放| 在线免费一区三区| 亚洲一区二区三区激情| 欧美性猛交xxxxxxxx| 视频一区在线播放| 911精品国产一区二区在线| 日本aⅴ免费视频一区二区三区 | 欧美老人xxxx18| 麻豆精品新av中文字幕| 精品久久久久久久人人人人传媒 | 色综合天天综合在线视频| 亚洲欧美日韩在线不卡| 欧美最新大片在线看| 天堂一区二区在线免费观看| 欧美一区二区免费| 国产盗摄精品一区二区三区在线 | 国产精品―色哟哟| 欧美在线一区二区| 黄色精品一二区| 亚洲人成伊人成综合网小说| 欧美高清视频在线高清观看mv色露露十八| 日本少妇一区二区| 国产精品美女www爽爽爽| 欧美日韩国产美| 风间由美一区二区av101| 亚洲成人综合在线| 国产日韩亚洲欧美综合| 欧美日韩在线播放三区| 国产91对白在线观看九色| 亚洲成av人片在线| 中文欧美字幕免费| 欧美一级黄色片| 在线亚洲+欧美+日本专区| 国产综合色精品一区二区三区| 玉足女爽爽91| 久久久久久久综合色一本| 欧美日韩国产成人在线免费| 大尺度一区二区| 久久99久久精品| 日日夜夜精品免费视频| 亚洲日本va在线观看| 国产亚洲欧美日韩俺去了| 欧美日韩国产综合久久 | 亚洲视频免费观看| 国产欧美一区二区三区在线老狼| 91精品国产欧美日韩| 欧美日韩免费观看一区三区| 91首页免费视频| 91美女在线视频| 国产69精品久久久久毛片| 韩日精品视频一区| 视频在线在亚洲| 麻豆久久久久久| 免费xxxx性欧美18vr| 日本伊人精品一区二区三区观看方式| 一区二区三区资源| 亚洲欧美偷拍三级| 亚洲第一电影网| 日韩不卡在线观看日韩不卡视频| 亚洲一二三区在线观看| 亚洲一区二区三区四区的| 亚洲一区二区三区精品在线| 亚洲午夜一区二区| 麻豆视频一区二区| 国模娜娜一区二区三区| 亚洲大片在线观看| 亚洲午夜在线视频|