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

📄 bac_code.cpp

📁 这是BAC(二值算数编码) 这是我自己提供的 主要是可是可适应性的编码功能
💻 CPP
字号:
#include <cstdlib>
#include <iostream>
#include <iomanip>
using namespace std;

double A,C;
double WT,WF;


int in_CX[20],in_D[20];
int E;

double BAC_Encoder_Data;

double BAC_Encoder();
void BAC_Decoder(); 

double A_of_E = 0.0; 

int out_Data[4]; 


int main(int argc, char *argv[])
{
    srand(time(NULL)); 
    
    for(int i = 0 ; i <= 4 ; i++)
    {
      in_D[i] = (rand()%2);
      cout << " " << in_D[i];       
    }
    
    cout << endl; 
    for(int i = 0 ; i <= 4 ; i++)
    {
      in_CX[i] = (rand()%8);
      cout << " " << in_CX[i];        
    }
    
    
    BAC_Encoder_Data = BAC_Encoder();
    
    cout <<"BAC_Encoder_Data : " << BAC_Encoder_Data << endl;
    
    BAC_Decoder();
    
    for(int i = 0 ; i <= 4 ; i++)
    {
      cout << "out_Data[" << i << "] : " << out_Data[i] << endl;
    } 

    
    system("PAUSE");
    return EXIT_SUCCESS;
}


//=========function=========

//BAC Encoder
double BAC_Encoder()
{
  A = 1.0;
  C = 0.0;
  E = 0;
   
  for(int i = 0 ; i <= 4 ; i++)
  {
    WF = 1.0/double(1 << (E + in_CX[i]));
    WT = A - WF;
    
    
    // 

⌨️ 快捷键说明

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