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

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

?? viterbi216.c

?? 一種應用比較廣泛的維特比譯碼算法--(2
?? C
字號:
//實現(2,1,6)卷積碼的維特比譯碼源程序,采用了最大似然算法 
//介紹了軟判決維特比譯碼算法過程的三個步驟:初始化,度量更新和回溯譯碼
#include<stdio.h>
unsigned long Trans_table[32]={0}; //一個單元32位,每兩個存儲單元存儲一個時刻的64狀態(tài)幸存信息
unsigned long Tran;  //存儲每個時刻的分支選擇路徑信息值,32位

void BFLY_A(int dp, int dm, int *p1, int *p2, int *p3);
void BFLY_B(int dp, int dm, int *p1, int *p2, int *p3);
void Tran_exchange();      //用于調整Tran中第2,3位的次序
int trace_back();

void main()
{
	//采用硬判決,1判為-1,0判為1
//  int sd[32]={-1,-1,1,-1,1,-1,-1,1,1,-1,1,1,-1,-1,-1,-1,
//         1,1,-1,1,-1,1,1,-1,-1,1,-1,-1,1,1,1,1};  //編碼器連續(xù)輸入8個1的輸出
//  int sd[32]={-1,-1,1,-1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,
//        -1,1,1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,1};  //編碼器輸入11101100...的輸出
    int sd[32]={-1,-1,1,-1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,
    	    -1,1,1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,1};  //編碼器連續(xù)輸入6個1的輸出
//  int sd[32]={-1,-1,1,-1,-1,1,1,1,-1,1,1,-1,-1,-1,1,1,
//         -1,1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1};  //編碼器輸入11010100...的輸出

    int bef[64]={0};    //前64狀態(tài)
    int aft[64]={0};    //后64狀態(tài)
    int t0,t1;
    int n,i,j;
    int output;
    int *pb,*pa1,*pa2;
    int *pd,*p4;
    
    pd=sd;
    p4=Trans_table;
    bef[0]=100;  //從0狀態(tài)開始,任意賦一個初值
    for(n=0;n<16;n++)
    {
    	pb=bef;
    	pa1=aft;
    	pa2=aft+2;
    	t1=*(pd++);
    	t0=t1+*pd;
    	t1=t1-*(pd++);
//    	printf("t0=%d,t1=%d\n",t0,t1);
      for(j=0;j<2;j++)  //每時刻64個狀態(tài),32個蝶形,兩個蝶形為一組,共循環(huán)16次
      {
      	  Tran=0;
          for(i=0;i<8;i++)
          {
          	//計算兩個蝶形運算中的第1,3分支度量值
          	  if(j==0)  //前半部分蝶形運算,分支度量使用因子t0,t1
          	  {
          	  	  if(i==2|i==3|i==4|i==5)  //前8個蝶形中,第2,3,4,5個蝶形實行翻轉,即原來加t0變?yōu)闇pt0,原來加t1變?yōu)闇pt1
          	  	  	  BFLY_B(t0, t1, pb, pa1, pa2);
          	  	  else
          	  	  	  BFLY_A(t0, t1, pb, pa1, pa2);
          	  }
          	  else    //后半部分蝶形運算,分支度量使用因子t0,t1
          	  {
          	  	  if(i==2|i==3|i==4|i==5)  //后8個蝶形中,第0,1,6,7個蝶形實行翻轉,即原來加t0變?yōu)闇pt0,原來加t1變?yōu)闇pt1
          	  	  	  BFLY_B(t1, t0, pb, pa1, pa2);
          	  	  else
          	  	  	  BFLY_A(t1, t0, pb, pa1, pa2);
          	  }
          	  
          	  pa1++;
              pa2++;
              //計算兩個蝶形運算中的第1,3分支度量值
              if(j==0)  //前半部分蝶形運算,分支度量使用因子t0,t1
          	  {
          	  	  if(i==2|i==3|i==4|i==5)  
          	  	  {
          	  	  	  BFLY_A(t0, t1, pb, pa1, pa2);
          	  	  	  
          	  	  	  //調整Tran中第2,3位的次序
          	  	  	  Tran_exchange(); 
          	  	  }
          	  	  else
          	  	  {
          	  	  	  BFLY_B(t0, t1, pb, pa1, pa2);
          	  	  	  Tran_exchange();
          	  	  }
          	  }
          	  else    //后半部分蝶形運算
          	  {
          	  	  if(i==2|i==3|i==4|i==5)
          	  	  {  
          	  	  	  BFLY_A(t1, t0, pb, pa1, pa2);
          	  	  	  Tran_exchange();
          	  	  }
          	  	  else
          	  	  {
          	  	  	  BFLY_B(t1, t0, pb, pa1, pa2);
          	  	  	  Tran_exchange();
          	  	  }
          	  }
          	  
          	  pa1=pa1+3;  //進入下一組蝶形運算
      	      pa2=pa2+3;
      	      pb=pb+2;
      	  }//end of i
      	  *(p4++)=Tran;  //64個狀態(tài)分兩組存儲
      }
      
      for(i=0;i<64;i++)
      	 bef[i]=aft[i];
    } 
  
    output=trace_back();
    printf("output=%x\n",output);  
}

void BFLY_A(int dp, int dm, int *p1, int *p2, int *p3)
{
	int a,b,c,d;
	int i;
	
	a=*p1+dp;
	b=*(p1+1)-dm;
	c=*(p1+32)-dp;
	d=*(p1+33)+dm;
	
	Tran=Tran<<1;
	
	*p2=a;
	*p3=b;
	if(c>a)  //c路徑標記為1,a路徑標記為0
	{
		Tran=Tran|0x01;
		*p2=c;
	}
	
	Tran=Tran<<1;
	
	if(d>b)   //d路徑標記為1,b路徑標記為0
	{
		Tran=Tran|0x01;
		*p3=d;
	}
}

void BFLY_B(int dp, int dm, int *p1, int *p2, int *p3)
{
	int a,b,c,d;
	
	a=*p1-dp;
	b=*(p1+1)+dm;
	c=*(p1+32)+dp;
	d=*(p1+33)-dm;
	
	Tran=Tran<<1;
	
	*p2=a;
	*p3=b;
	if(c>a)  //c路徑標記為1,a路徑標記為0
	{
		Tran=Tran|0x01;
		*p2=c;
	}
	
	Tran=Tran<<1;
	
	if(d>b)   //d路徑標記為1,b路徑標記為0
	{
		Tran=Tran|0x01;
		*p3=d;
	}
}

void Tran_exchange()
{
	int x,y;
	x=((Tran&0x04)?1:0);  //取出Tran的第3位
	y=((Tran&0x02)?1:0);  //取出Tran的第2位
	if(x!=y)  //如果不等則交換
	{
		if(x>y)
			Tran=Tran-2;  //Tran的第2,3位互換
		else
			Tran=Tran+2;  //Tran的第2,3位互換
	}
}

int trace_back()
{
	  int *p4;
	  int state;
	  unsigned temp=0;
	  int i,num;
	  
	  p4=Trans_table+32;  //移到數組最后
	  state=0;
	  for(i=0;i<16;i++)
	  {
	  	p4--;
	  	p4--;  //兩個單元為一個整體,前一個單元處理前32狀態(tài)
	  	printf("state=%x\n",state);
	  	
	    //下面分兩部分操作,前一部分處理前32狀態(tài),后一部分處理后32狀態(tài)
		  if(state>=0&&state<32)
		  {
	  	    if(state&0x01)  //只有state為奇數時,輸入才可能為1
	  		    temp=(temp>>1)|0x8000;
	        else
	    	    temp=(temp>>1);
	    	
	        num=31-state;
	        state=state>>1;   //回到前一時刻
	        if((*p4>>num)&0x01)
	    	    state=state+32;
      }
      else if(state>=32&&state<64)
		  {  
		  	  p4++;
	  	    if(state&0x01)  //只有state為奇數時,輸入才可能為1
	  		    temp=(temp>>1)|0x8000;
	        else
	    	    temp=(temp>>1);
	    	
	        num=63-state;
	        state=state>>1;   //回到前一時刻
	        if((*p4>>num)&0x01)
	    	    state=state+32;
	    	    
	    	  p4--;
      }
	    	
//	    printf("temp=%x\n",temp);
	  }
	  return temp;
}
	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国内片67194| 久久久亚洲高清| a级高清视频欧美日韩| 国产一区二区三区免费观看| 捆绑紧缚一区二区三区视频| 青青草原综合久久大伊人精品优势| 午夜伦欧美伦电影理论片| 午夜精品福利在线| 精品国产露脸精彩对白| 国产精品污网站| 欧美天堂一区二区三区| 不卡在线视频中文字幕| 不卡免费追剧大全电视剧网站| 成人免费视频视频在线观看免费 | 色94色欧美sute亚洲线路一久| 日韩午夜激情电影| 日韩精品1区2区3区| 精品视频一区三区九区| 一区二区三区欧美视频| aaa亚洲精品| 国产精品入口麻豆原神| 国产麻豆日韩欧美久久| 欧美一区二区精品久久911| 五月天激情综合网| 欧美精品少妇一区二区三区| 亚洲一区二区视频在线| 欧美在线色视频| 亚洲一区二区三区免费视频| 欧美专区日韩专区| 午夜天堂影视香蕉久久| 欧美少妇xxx| 午夜久久久影院| 91麻豆精品国产91久久久使用方法| 亚洲精选视频在线| 在线观看免费成人| 婷婷成人综合网| 日韩一区二区三区观看| 精品系列免费在线观看| 国产日韩欧美麻豆| 成人动漫中文字幕| 亚洲免费电影在线| 欧美精品视频www在线观看| 免费成人美女在线观看.| 久久综合色播五月| 成+人+亚洲+综合天堂| 一区二区三区产品免费精品久久75| 欧美在线观看禁18| 蜜桃精品在线观看| 国产片一区二区三区| 色综合咪咪久久| 免费看日韩精品| 国产亚洲综合av| 91九色最新地址| 男男gaygay亚洲| 亚洲欧洲日产国产综合网| 欧洲一区在线观看| 久久99精品久久只有精品| 国产精品国产三级国产普通话蜜臀| 在线欧美小视频| 激情久久五月天| 国产精品国产精品国产专区不片| 在线观看亚洲精品视频| 韩国在线一区二区| 亚洲制服丝袜一区| 久久久久久久久久美女| 日本乱人伦一区| 国产精品66部| 日韩不卡免费视频| 亚洲欧美自拍偷拍色图| 欧美变态凌虐bdsm| 91国偷自产一区二区开放时间| 蜜桃一区二区三区在线| 亚洲精品视频一区二区| 久久影音资源网| 欧美日韩精品一区视频| 国产精品18久久久久久久网站| 一区二区三区在线免费视频| 精品理论电影在线| 精品视频一区二区不卡| 成人自拍视频在线观看| 日本在线不卡视频一二三区| 国产精品白丝在线| 久久精品视频免费| 日韩午夜在线播放| 欧美日韩免费高清一区色橹橹| 成人综合日日夜夜| 国产一本一道久久香蕉| 三级欧美在线一区| 亚洲免费伊人电影| 中文字幕第一区第二区| 欧美videossexotv100| 欧美区视频在线观看| 91美女片黄在线观看| 国产iv一区二区三区| 久88久久88久久久| 青青青伊人色综合久久| 日韩精品视频网| 亚洲国产综合色| 亚洲午夜在线视频| 亚洲综合色网站| 亚洲日本乱码在线观看| 国产精品五月天| 国产女人水真多18毛片18精品视频| 日韩欧美国产1| 日韩精品一区二区三区蜜臀| 91精品欧美久久久久久动漫| 色婷婷国产精品久久包臀| 9i在线看片成人免费| 成人黄色小视频在线观看| 成人性生交大片免费看在线播放| 国产高清在线观看免费不卡| 国产成人精品免费| 国产精品一级片| 成人免费三级在线| 成人一道本在线| 99精品在线免费| 色8久久人人97超碰香蕉987| 欧美无砖专区一中文字| 69久久99精品久久久久婷婷| 欧美一区二区三区四区五区| 91精品久久久久久久久99蜜臂| 337p亚洲精品色噜噜| 日韩一区二区免费电影| 2023国产一二三区日本精品2022| 久久蜜桃香蕉精品一区二区三区| 国产亚洲精品中文字幕| 日韩一区在线看| 亚洲成a人v欧美综合天堂| 日本不卡一二三| 国产一区二区主播在线| 成熟亚洲日本毛茸茸凸凹| 色94色欧美sute亚洲线路一久 | 国产91精品欧美| 成人一区在线看| 色哟哟国产精品免费观看| 在线看日韩精品电影| 日韩一级高清毛片| 国产三级一区二区| 亚洲欧美日韩国产综合| 日韩影院精彩在线| 国产又黄又大久久| 91欧美激情一区二区三区成人| 欧美日韩视频专区在线播放| 精品成人免费观看| 成人免费一区二区三区视频| 日韩黄色一级片| 粉嫩av一区二区三区在线播放 | 中文字幕免费观看一区| 亚洲女子a中天字幕| 欧美a级一区二区| 91麻豆免费视频| 日韩免费高清av| 亚洲精品自拍动漫在线| 精品伊人久久久久7777人| 成人aa视频在线观看| 欧美一区二区私人影院日本| 日本一区二区免费在线观看视频 | 亚洲成人自拍网| 国产麻豆成人传媒免费观看| 在线日韩国产精品| 久久久国际精品| 偷拍一区二区三区| 成人aa视频在线观看| 欧美成人r级一区二区三区| 亚洲一级二级三级在线免费观看| 国产在线精品免费av| 91精品国产美女浴室洗澡无遮挡| 综合分类小说区另类春色亚洲小说欧美| 日韩高清不卡一区二区三区| 色老汉一区二区三区| 久久亚洲综合av| 日韩va欧美va亚洲va久久| 色婷婷精品大在线视频| 国产午夜精品福利| 国产呦精品一区二区三区网站| 欧美日韩精品电影| 亚洲日本中文字幕区| 国产不卡免费视频| 久久久激情视频| 国产剧情一区在线| 精品成人在线观看| 强制捆绑调教一区二区| 欧美日韩国产免费| 一区二区三区91| 色婷婷av一区二区| 一区二区三区电影在线播| 99国产精品久久久久| 久久精品欧美一区二区三区麻豆| 老司机精品视频线观看86| 欧美一区二区三区四区久久| 亚洲电影你懂得| 欧美少妇性性性| 亚洲不卡一区二区三区| 欧美日本在线视频| 亚洲成a人片在线观看中文| 欧美日韩一二三区| 日欧美一区二区| 日韩一区二区电影| 国产真实乱偷精品视频免| 国产午夜精品一区二区三区嫩草|