當前位置:首頁 » 編程軟體 » pcm編程

pcm編程

發布時間: 2023-06-13 13:25:37

① PCM編碼的DSP實現

這是編碼子程序,大概思路是這樣的,還需要自己微調。

#include<stdio.h>
#include<math.h>
int main()
{int dataleft=0X0000;
scanf("%d",&dataleft);
int b=0 ,lj=0,dl=0,dn=0,pcm=0 ;
if(dataleft<=0)
{dataleft=abs(dataleft);
b=1;
};
dataleft>>4;
if(dataleft<=15&&dataleft>=0)
{ lj=1;
dl=000;
dn=(dataleft-0)/lj;}
if(dataleft<=31&dataleft>=16)
{ lj=1;
dl=001;
dn=(dataleft-16)/lj;}
if(dataleft<=63&dataleft>=32)
{lj=2;
dl=010;
dn=(dataleft-32)/lj;}
if(dataleft<=127&dataleft>=64)
{ lj=4;
dl=011;
dn=(dataleft-64)/lj;}
if(dataleft<=255&dataleft>=128)
{ lj=8;
dl=100;
dn=(dataleft-128)/lj;}
if(dataleft<=511&dataleft>=256)
{ lj=16;
dl=101;
dn=(dataleft-256)/lj;}
if(dataleft<=1023&dataleft>=512)
{ lj=32;
dl=110;
dn=(dataleft-512)/lj;}
if(dataleft<=2047&dataleft>=1024)
{lj=64;
dl=111;
dn=(dataleft-1024)/lj;}
b=b<<7;
dl=dl<<3;

pcm=b+dl+dn;
printf("%d",pcm);
}

② 求編程高手幫忙~寫一段8位二進制折疊碼(PCM編碼器)編譯碼程序

#include <stdio.h>
#include <conio.h>

int trans(int n)
{
int r=0;

if(n<0)
{
r=r|0x80;
n=-n;
}
if(n<=16)
{
r=r|0x00;
}
else if(n<=32)
{
r=r|0x10;
}
else if(n<=64)
{
r=r|0x20;
}
else if(n<=128)
{
r=r|0x30;
}
else if(n<=256)
{
r=r|0x40;
}
else if(n<=512)
{
r=r|0x50;
}
else if(n<=1024)
{
r=r|0x60;
}
else if(n<=2046)
{
r=r|0x70;
}
else
{
return 0;
}
r=r|(n&0x0f);
return r;
}

main()
{
int n,r,i;

printf("輸入一個10進制(1-2048):");
scanf("%d",&n);
if(n>=1 && n<=2048)
{
r=trans(n);
printf("8位2進制為:");
for(i=0;i<8;i++)
{
printf("%c",((r>>(8-i-1))&0x01)+'0');
}
printf("\n");
}
else
{
printf("輸入錯誤!\n");
}
}

熱點內容
為什麼安卓手機wearpro搜不到手錶 發布:2025-02-09 12:16:07 瀏覽:670
伺服器安全怎麼做 發布:2025-02-09 12:08:08 瀏覽:484
傳奇編譯完整部署教程 發布:2025-02-09 12:03:39 瀏覽:830
vivo手機微信聊天記錄在哪個文件夾 發布:2025-02-09 11:55:24 瀏覽:839
數控內孔循環編程實例 發布:2025-02-09 11:51:41 瀏覽:762
工作站玩游戲買什麼配置的電腦 發布:2025-02-09 11:49:34 瀏覽:773
奶塊透視腳本群 發布:2025-02-09 11:44:18 瀏覽:544
敢死連狙擊手之無名高地ftp 發布:2025-02-09 11:27:21 瀏覽:584
lol天使輔助腳本 發布:2025-02-09 11:24:39 瀏覽:140
溯源碼怎麼生成 發布:2025-02-09 11:15:15 瀏覽:443