下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、原理與環(huán)節(jié)在隨機(jī)信道中,錯碼的出現(xiàn)是隨機(jī)的,且錯碼之間是記錄獨立的。例如,由高斯白噪聲引起的錯碼就具有這種性質(zhì)。因此,當(dāng)信道中加性干擾重要是這種噪聲時,就稱這種信道為隨機(jī)信道。由于信息碼元序列是一種隨機(jī)序列,接受端是無法預(yù)知的,也無法辨認(rèn)其中有無錯碼。為了解決這個問題,可以由發(fā)送端的信道編碼器在信息碼元序列中增長一些監(jiān)督碼元。這些監(jiān)督碼元和信息碼元之間有一定的關(guān)系,使接受端可以運用這種關(guān)系由信道譯碼器來發(fā)現(xiàn)或糾正也許存在的錯碼。在信息碼元序列中加入監(jiān)督碼元就稱為差錯控制編碼,有時也稱為糾錯編碼。不同的編碼方法有不同的檢錯或糾錯能力。有的編碼就只能檢錯不能糾錯。漢明碼是一種可以糾正一位錯碼且編碼效率較高的線性分組碼。漢明碼是一種多重(復(fù)式)奇偶檢錯系統(tǒng)。它將信息用邏輯形式編碼,以便可以檢錯和糾錯。用在漢明碼中的所有傳輸碼字是由本來的信息和附加的奇偶監(jiān)督位組成的。每一個這種奇偶位被編在傳輸碼字的特定比特位置上。推導(dǎo)并使用長度為m位的碼字的漢明碼,所需環(huán)節(jié)如下:1、擬定最小的監(jiān)督位數(shù)k,將它們記成DI、D2、…、Dk,每個監(jiān)督位符合不同的奇偶測試規(guī)定。2、原有信息和k個監(jiān)督位一起編成長為m+k位的新碼字。選擇k監(jiān)督位(0或1)以滿足必要的奇偶條件。3、對所接受的信息作所需的k個奇偶檢查。4、假如所有的奇偶檢查結(jié)果均為對的的,則認(rèn)為信息無錯誤。假如發(fā)現(xiàn)有一個或多個錯了,則錯誤的位由這些檢查的結(jié)果來唯一地擬定。2、算法描述一個二元(7,4)漢明碼的系統(tǒng)碼形式的矩陣和校驗矩陣分別為10001011110100G=0100111H=G=0100111H=0111010001011000101101101001000101100101101101001等價的編碼方程為G=m.i=0,1,2,3C4=m0+mi+m2Cs=mi+m2+mC6=m0+mi+m33、源程序及注釋voidmain(){intaa[10000];inti;ointN;intb⑷[7]={{1,0,0,0,1,0,1},{1。{0,0,1,0,1,1,0},{0,0,0,1,0,1,1}};〃定義生成矩陣inty=0,s=0;intj,k,m;inta[4],q[7],rr[10000/4*7];intp,D=0;。intcc[2500],dd[2500];?inte[8][7]={{1,0,0,0,0,0,0},{0,1,0,0,0,0,0},{0,0,1,0,0,0,0},{0,0,0,1,0,0,0},{0,0,0,0,1,0,0},。{0,0,0,0,0,1,0},{0,0,0,0,0,0,1},{1,1,0,0,000});〃定義錯誤圖樣intw[10000/4*7];intH[7][3]={{1,0,1},{1,1,1},{1,1,0},。1,1},{1,0,0},{0,1,0},{0,0,1)};intA=0,M=0,L=8;,intf[3];intww[10000/4*7];printf("漢明(7,4)碼的編碼與譯碼程序:\n”);printf("請輸入你想產(chǎn)生的二進(jìn)制個數(shù):");scanf("%d",&N);〃輸入想產(chǎn)生的信源的個數(shù)while(N<4)(Printf("輸入無效,請重新輸入");printf("請輸入你想產(chǎn)生的二進(jìn)制個數(shù):*,);scanf(”%d”,&N);)printf("隨機(jī)產(chǎn)生的二進(jìn)制序列為:\n“);srand((unsigned)time(NULL));〃產(chǎn)生一個隨機(jī)序列,并把它放入a口中efor(i=0;i<N;i++){aa[i]=rand()%2;printf("%d"zaa[i]);}oprintf("\n");oprintf("編碼后變?yōu)?\n”);〃編碼生成碼字?for(m=0;m<N/4:m++)。{for(i=y;i<(y+4);i++)66{a[i-y]=aa[i];}//〃取出4位出來for(j=0;j<7;j++)。{q口]=0;。for(k=0;k<4;k++)。。。。q[j]+=a[k]*b[kJ[j];/////與生成矩陣相乘000}for(i=s;i<(s+7);i++)。。{rr[i]=0;。rr[i]=q[i-s]%2;-printf("%d,rr[i]);〃〃將生成的放入rr[]中00)y=y+4;〃〃向后移動4位s=s+7;///向后移動7位printf("\n");)printf("通過信道后變?yōu)?\n");srand((unsigned)time(NULL));for(j=O:j<N/4;j++){cc[j]=rand()%100;////產(chǎn)生一個0?99的隨機(jī)數(shù)if(cc[j]<9)////當(dāng)隨機(jī)數(shù)小于9時,一個碼字產(chǎn)生2個錯誤{for(i=D;i<(D+7);i++)°。{w[i]=0;w[i]=(rr[i]+e[7][i-D])^2;oprintf("%d",w[i]);})elseif((cc[j)>=9)&&(cc[j]<=30))〃/當(dāng)隨機(jī)數(shù)在9?30時,一個碼字產(chǎn)生一個錯誤{。dd[j]=rand()%7;P=dd[j]:〃/隨機(jī)產(chǎn)生一個0?6的數(shù),以擬定是碼字一個錯誤的位置?P=dd[j]:o。{w[i]=0;。。w[i]=(rr[i]+e[p][i-D])%2;oprintf(”%d”,w[i]);})else//〃〃當(dāng)隨機(jī)數(shù)在30~99時,不發(fā)生錯誤{afor(i=D;i<(D+7);i++)。{w[i]=0;^w[i]=rr[i];Printf("%d",w[i]);}°}。D=D+7;////向后移動7位printf("%6d",cc[j]);〃///進(jìn)行跟蹤,以擬定碼字錯幾位printf("\n");)Printf("通過譯碼后變?yōu)椋篭n");for(i=0;i<N/4;i++){for(j=0;j<3;j++){。f[j]=0;。for(k=A;k<A+7水++)-f[j]+=w[k]*H[k-A]皿〃〃/計算隨著式for(m=0;m<7;m++){?for(j=0;j<3;j++)。if((f[j]%2)==H[m][j])M=M+1;if(M==3)L=m;。M=0;〃清零}〃/根據(jù)隨著式找到犯錯的位置for(m=0;m<7;m++)。{?if(m==L)。{ww[A+m]=(w[A+m]+1)%2;〃將犯錯的地方更正printf(”%d”,ww[A+m]):8)else。{ww[A+m]=w[A+m];Printf("%d",ww(A+m]);〃沒有犯錯的地方))A=A+7;〃向后移動7位L=8;〃復(fù)位M=0;〃/清零,復(fù)位printf("\n");))4、運營輸出結(jié)果實例
SB"D:\C語習(xí)\Debug\cppl.exe"漢明<7,4〉碼的編碼與譯碼程序:請輸入你想產(chǎn)生的二進(jìn)制個數(shù):4隨機(jī)產(chǎn)生的二進(jìn)制序列為:1010解碼后變?yōu)?010110匿過信道后變?yōu)椋?1011110度過譯碼后變?yōu)?010110ressanykeytocontinueressanykeytocontinueressanykeytocontinue5、實驗總結(jié)ressanykeytocontinue這次的實驗是實現(xiàn)漢明碼的編碼與譯碼,達(dá)成糾錯功能。通過信息論的課程,我基本了解了漢明碼編譯的原理和方法,但在編程的過程中碰到了不小的困難。一方面還是理解漢明碼概念的問題,由于還存在糾錯的功能,所以漢明碼的編碼方式和以前學(xué)的哈夫曼編碼或Fano編碼比起來要復(fù)雜不少,開始的時候理解起來有些困難。但是通過仔細(xì)看PPT,不久就弄懂了漢明碼的原理。但是最開始編出來的程序運營的結(jié)果總是不對的,和書上的碼字不同樣,后來發(fā)現(xiàn)是在校驗矩陣上出了問題,自己對矩陣方面的知識一直把握得不是很好。通過調(diào)試,程序不久就可以對
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 標(biāo)準(zhǔn)化廠房工程量清單編制方案
- 外墻施工進(jìn)展匯報制度方案
- 施工現(xiàn)場物資管理方案
- 心梗防治知識
- 建筑物能效評估方案
- 竣工驗收過程中的溝通機(jī)制方案
- 施工管線綜合驗收方案
- 2026年心理咨詢師基礎(chǔ)知識初級試題解析
- 2026年化妝品檢測與評估技術(shù)專業(yè)試題
- 2026年物流管理與供應(yīng)鏈培訓(xùn)物流流程與成本控制試題
- 2025年市級科技館招聘筆試重點解析
- 機(jī)動車檢驗機(jī)構(gòu)管理年度評審報告
- 監(jiān)獄消防培訓(xùn) 課件
- 道路建設(shè)工程設(shè)計合同協(xié)議書范本
- 白塞病患者外陰潰瘍護(hù)理查房
- 西葫蘆的栽培技術(shù)
- 2025年安徽阜陽市人民醫(yī)院校園招聘42人筆試模擬試題參考答案詳解
- 2024~2025學(xué)年江蘇省揚州市樹人集團(tuán)九年級上學(xué)期期末語文試卷
- 2026屆江蘇省南京溧水區(qū)四校聯(lián)考中考一模物理試題含解析
- 2025年黑龍江省公務(wù)員《申論(行政執(zhí)法)》試題(網(wǎng)友回憶版)含答案
- 公司大型綠植自營活動方案
評論
0/150
提交評論