decimate.asm
来自「GSM移动通信系统中上变器的DSP实现程序」· 汇编 代码 · 共 87 行
ASM
87 行
.title "Decimate.asm"
.include "Init_54x.asm"
.def MAIN
IDBASE .set 12H
QDBASE .set 13H
IDAR2 .set 14H
QDAR2 .set 15H
IDECIM .set 30H
IDECI1 .set 31H
IDECI2 .set 32H
IDECI3 .set 33H
IDECI4 .set 34H
QDECIM .set 35H
QDECI1 .set 36H
QDECI2 .set 37H
QDECI3 .set 38H
QDECI4 .set 39H
K_DECLG .set 80
INDECIM .set 100H
QUDECIM .set 180H
MAIN ST #INDECIM,IDAR2
ST #QUDECIM,QDAR2
STM #INDECIM,AR2
LOOP IDLE #1
STM #K_DECLG,BK
STM #1,AR0
STM #DECIMTAB,AR3
MVDK IDAR2,AR2
MVKD #IDECIM+K_AD,*AR2+%
MVKD #IDECI1+K_AD,*AR2+%
MVKD #IDECI2+K_AD,*AR2+%
MVKD #IDECI3+K_AD,*AR2+%
MVKD #IDECI4+K_AD,*AR2+%
MVKD AR2,IDAR2
RPTZ A,#K_DECLG-1
MAC *AR2+0%,*AR3+,A
LD #7FFFH,15,B
MIN A
LD #-7FFFH,15,B
MAX A
STH A,IDBASE
STM #K_DECLG,BK
STM #1,AR0
STM #DECIMTAB,AR3
MVDK QDAR2,AR2
MVKD #QDECIM+K_AD,*AR2+%
MVKD #QDECI1+K_AD,*AR2+%
MVKD #QDECI2+K_AD,*AR2+%
MVKD #QDECI3+K_AD,*AR2+%
MVKD #QDECI4+K_AD,*AR2+%
MVKD AR2,QDAR2
RPTZ A,#K_DECLG-1
MAC *AR2+0%,*AR3+,A
LD #7FFFH,15,B
MIN A
LD #-7FFFH,15,B
MAX A
STH A,QDBASE
B LOOP
DECIMTAB:
.word -8,-11,-16,-19,-18,-9,6,28
.word 51,70,77,67,35,-15,-78,-138
.word -180,-186,-145,-54,74,218,343,413
.word 395,270,45,-252,-563,-816,-930,-837
.word -490,116,945,1916,2917,3820,4504,4872
.word 4872,4504,3820,2917,1916,945,116,-490
.word -837,-930,-816,-563,-252,45,270,395
.word 413,343,218,74,-54,-145,-186,-180
.word -138,-78,-15,35,67,77,70,51
.word 28,6,-9,-18,-19,-16,-11,-8
.END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?