• 大小: 217KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-03
  • 语言: 其他
  • 标签: PCM  

资源简介

PCM编解码程序说明: 1.编码:程序首先提取一个系统时间,取正弦函数值后,对其进行编码,每秒抽样8000次。 每次运行生成8000个值,放入Excel文件中,每次生成一个文件,文件名按数字顺序排列,如文件组有空缺,则生成文件插入空缺位置,并在文件名之后加X以示区别。 例:只有文件x000.xls , x002.xls, 则运行程序后生成x001x.xls 若已有文件x000.xls , x001.xls , x002.xls , …… X019.xls 共20个文件,则运行后生成x020.xls。 2.解码:运行程序后要求输入想要解码的文件名,则对那文件中的数据进行解码,解码生成的文件名是在文件名前加上recoder_,例如,编码文件:x005.xls,则解码文件名为 redoer_x005.xls。

资源截图

代码片段和文件信息

#include 
#include 
#include 
using namespace std;

void coding(time_t tm);

int main(){
    time_t tm;
    tm = time(NULL);
    coding(tm);
    return 0;
}
    
void coding(time_t tm)

    ofstream infile(“PCM编码.xls“);
  
    int nmx;
    int key;
    
    for (int j = 0;j < 8000; j++)
    {
        
        n =  sin(tm + j/2.0)*128*16;
        x = n;
        n = abs(n);
    
        key = 1;
        if(n >= 16){
             while(!( (n / (16*key)) >= 1 && (n / (16*key)) < 2)) 
             key = key * 2; }
   
        m = (n - key*16) / key+ (log2(key) + 1)*16; 
    
        if(x >= 0) infile << “1\t“;
        else infile << “0\t“;
    
        int y[7]={0}i = 0;
        while(m > 0)      
        {
             y[i] = m % 2;
             i++;
             m = m/2;
        }
        for(i = 6; i >= 0; i--)
             infile << y[i] << “\t“;
        infile << endl;
        }
}
    
    
    
    
    
    
    

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    .CA....      1018  2007-06-15 19:01  PCM编解码(c++版)\PCM编码.cpp

    .CA....    455777  2007-08-10 23:44  PCM编解码(c++版)\PCM编码.exe

    .CA....    144000  2009-03-16 21:30  PCM编解码(c++版)\PCM编码.xls

    .CA....       753  2007-06-12 18:21  PCM编解码(c++版)\PCM解码.cpp

    .CA....    476171  2007-08-10 23:44  PCM编解码(c++版)\PCM解码.exe

    .CA....     49176  2009-03-16 21:30  PCM编解码(c++版)\PCM解码.xls

    .C.D...         0  2009-03-16 21:30  PCM编解码(c++版)

----------- ---------  ---------- -----  ----

              1126895                    7


评论

共有 条评论