信息論編碼實驗報告費諾編碼附源代碼講述_第1頁
信息論編碼實驗報告費諾編碼附源代碼講述_第2頁
信息論編碼實驗報告費諾編碼附源代碼講述_第3頁
信息論編碼實驗報告費諾編碼附源代碼講述_第4頁
信息論編碼實驗報告費諾編碼附源代碼講述_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、中南大學信息論與編碼實驗報告選 題:費諾編碼學生姓名:學 號:專業(yè)班級:通信工程指導老師:學 院:信息科學與工程學院時 間:2015目錄一. 實驗目的二、實驗原理2. 1費諾編碼思想2.2費諾編碼流程圖三、實驗內(nèi)容實驗要求五、代碼調(diào)試結(jié)果六.心得體會七.程序源代碼一實驗目的1. 掌握費諾編碼的原理和過程。2. 熟悉c/c+語言,練習使用c/c+實現(xiàn)香農(nóng)碼和huffman編碼。二、實驗原理2. 1費諾編碼思想設(shè)有離散無記憶信源pmi=1. 按信源符號的概率從大到小的順序排隊不妨設(shè)(兀2)、» p(e)2. 將依次排列的信源符號按概率值分為兩大組,使兩個組的概率z和近似相同,并對各組賦

2、予一個二進制碼元“0”和“1” o3. 將每一大組的信源符號再分為兩組,使劃分后的兩個組的概率之和近似相同,并對各組賦予一個二進制符號“0”和“1” 04. 如此重復,直至每個組只剩下一個信源符號為止。5. 信源符號所對應(yīng)的碼字即為費諾碼。例:有一單符號離散無記憶信源 x xix2兀3兀4無5兀6 _p(x)_=0.32 0.22 0.18 0.16 0.08 0.04/對該信源編二進制費諾碼0.320000兀20.221010.180100.16101100.081101110%0.0411111h(x) = 2.350/sign)r = log2 m警 97.92%6k=y pdm = 2

3、.4(比特 / 符號)z=12.2費諾編碼流程圖三、實驗內(nèi)容使用cc+實現(xiàn)費諾編碼,并自己設(shè)計測試案例。實驗要求1. 提前預習實驗,認真閱讀實驗原理以及相應(yīng)的參考書。2. 認真高效的完成實驗,實驗中服從實驗室管理人員以及實驗指導老師的管理.3. 認真撰寫實驗報告,內(nèi)容可以自己編排,可以考慮包括以下一些方面:原理概述、程序設(shè) 計與算法描述、源程序及注釋(程序太長可以只選取重要部分)、運行輸出結(jié)果實例、調(diào)試 和運行程序過程中產(chǎn)生的問題及采取的措施、對實驗的討論分析、總結(jié)。五、代碼調(diào)試結(jié)果費諾編碼實驗選疑:丄筆率編碼:2 追出:1請輸入信源符號個數(shù):3請輸入各信源符號概率«0.60.3 0

4、丄信源費諾編碼如下: 概率xl-0.6 x2=0.3 心=0 丄瑪字溝碼長対01102丄丄2hx=1.29546 匕匕牛寺/符號信源幡平均碼長k-1.4比特/符號編碼效率為92.533x1 -竜蚩編帀n 5010110111概率xl=0-5 x2 =0 3 x3=0.15 x4=0 05o:編程幵c + +microsoft visuali-wig編碼2 遺出:編碼效率為96-9253x平均碼長k=1.7比特/符號信源燔 hx=1.64773 比特/符號i 1請輸入信源符號亍數(shù): i青輸入各信源符號概率:0.50.30.150.05言源費諾編碼如下:d:扁程開發(fā)c + +microsoft v

5、isual studiomyprojectssdyydebugsdyy.exe費諾編碼實驗編碼:pi青輸入信源符號個數(shù): 備輸入各信源符號概率:0.90.20.1輸入概率有錯,請重新輸入?諾編碼:請輸入信源符號個數(shù):4一六、心得體會通過木次試驗,熟悉了 c+的使用方法以及在信息論中的使用方法,加強了 課程框架的理解。在這次實驗中,再次對信息論與編碼有了更深層的理解,以前 只是通過書上的理論推導,對相關(guān)的計算不是特別理解,通過這次的上機實際操 作,以及函數(shù)圖形的繪制,讓我對爛函數(shù)有了更多的感性認識。對費諾編碼的理 論了解得更透徹??偟膩碚f,不僅是實驗的結(jié)果,更重要的是過程和思考,是我學到了很多的

6、 知識,真的是受益匪淺。七、實驗代碼#include<iostream h>#i nclude<math.h>#include<windows. h>#define n 15/fano編碼算法int pann;void fano(float p, int an n, int n, int m, int k)float g=0. 0, h=0. 0, d, b, c; int i, j;if (n<m)for(i=n;i<=m;i+)g 二 pi+g;g=g/2;for(i=n;i<=m;i+)h=h+pi;if (h>g)d二h-譏i

7、;b二hg;c二g-d; if (c>b)for(j=n;j<=i;j+) ajk二0; fano (p,a, n, i, k+1);for(j=i+l;j<=m;j+) ajk=l; fano(p, a, i+1, m, k+1);elsefor(j=n;j<=i-l;j+) ajk=0; fano(p, a, n, i-1, k+1); for(j=i;j<=m;j+) ajk=l; fano(p, a, i, m, k+1);break;void select ()/初始化選擇,實現(xiàn)編碼void display();void choose();int i,

8、j, kn, n, flase二0;float pm, h二0. 0, k=0. 0, sum=0. 0; cout«,/請輸入信源符號個數(shù):"endl;/函數(shù)聲明函數(shù)聲明cin>>n;cout«,z請輸入各信源符號概率:"endl;for (i=l;i<=n;i+)cin»pi;for (i=l;i<=n;i+)sum=sum+pi;for(i=l;i<=n;i+)if(pi<0. 0| |pi>1.0| |sum!=l. 0)cout«z/輸入概率有錯,請重新輸入!z/«endl

9、«endl;display();choose ();if(flase=0)for (i=0;i<=n;i+)for(j=0;j<=n;j+)pa訂j=10;fano (p, pa, 1, n, 1);cout<<"信源費諾編碼如下:n,z«endl;cout«"概率碼字為t<<碼長為t,z«endl;for (i=l; ion; i+)ki二 0;cout<<x<<i<<二<<pi<<t;for(j=l;j<=n;j+)if (pa訂

10、j!=10)cout«pai j ;ki+;cout<</,t,<<ki <<endl;for (i=l;i<=n;i+)h=- (p i *log (p i ) /log (2) +h;cout«endl«z/信源嬌h(x)=/z«h«z,(比特/符號),z«endl«endl;for(i=l;i<=n;i+)k=pi*ki+k;cout<<,?平均碼長 k二(比特/符號),z<<endl<<endl;cout<<編碼效率為,&

11、lt;<(h/k)*100«,%,«endl;display ();choose ();void display()cout<<endl<<,z選擇:"<<endl;cout<<,zl.費諾編碼:"endl ;cout"2.退出:"endl ;void choose()int a;cin»a;if(a=l)select ();else if(a=2)exi t(0);elsecout«z,請重新選擇:*«endl;choose ();void inain()cout<<z,費諾編碼實驗,<<endl<<endl;di splay ();choose ();system(&qu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論