在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 手機與無線通信 > 設計應用 > 網絡高效安全數據傳輸方法設計

            網絡高效安全數據傳輸方法設計

            作者: 時間:2015-04-12 來源:網絡 收藏

              2介紹

            本文引用地址:http://www.biyoush.com/article/272396.htm

              是20世紀50年代由哈夫曼教授研制開發(fā)的,它借助了數據結構當中的樹型結構,在哈夫曼算法的支持下構造出一棵最優(yōu)二叉樹,把這類樹命名為哈夫曼樹。因此,準確地說,是在哈夫曼樹的基礎之上構造出來的一種編碼形式,它的本身有著非常廣泛的應用。

              2.1基本原理

              數據能夠被壓縮的理論依據如下:

              定義1對于給定的信源和碼符號集,若有一個惟一可譯碼,其平均碼長L小于所有其他惟一可譯碼,則稱這種碼為緊致碼或最佳碼。

              定理1哈夫曼編碼是緊致碼。

              計算機文件是以字節(jié)為單位組成的,每個字節(jié)的取值為O~255.每個字節(jié)都看成字符,共256種字符。因此,每個字節(jié)都是以8個二進制位的定長編碼表示的。由于這種定長碼也是惟一可譯碼,根據定理1有L≤8.

              設某個文件有N個字節(jié)組成,則該文件總長度為8N比特。如果對該文件進行哈夫曼編碼,則該文件總長度為LN比特。由于L≤8,所以LN≤8。所以,只要文件滿足L<8,用哈夫曼編碼總可以對其壓縮。

              哈夫曼編碼是一種變長編碼,即通過使用較短的碼字來給出現概率較高的信源符號編碼,而出現概率較小的信源符號用較長的碼字來編碼,從而使平均碼長最短,達到最佳編碼的目的。由于哈夫曼編碼只能對概率已知的信源符號編碼,因此是一種統(tǒng)計編碼。

              2.2 構造哈夫曼編碼表

              獲得一個文件的哈夫曼編碼表是該文件獲得壓縮與解壓的關鍵。設某個文件中含有q種字符S1,S2,…,Sq,并且統(tǒng)計出每種字符在文件中出現的概率分別為p(S1),p(S2),…,p(Sq),則編碼的具體方法如下:

              (1)將q個信源符號按概率大小遞減排列p(S1)≥p(S2)≥…≥p(Sq);

              (2)用字符‘O’和‘1’分別代表概率最小的2個信源符號,并將這2個概率最小的信源符號合并成1個信源符號,從而得到只包含q-1個符號的新信源,稱為縮減信源S1;

              (3)把縮減信源S1的符號仍按概率大小遞減次序排列,再將其最后兩個概率最小的信源符號分別用字符‘O’和‘1’表示,并且合并成一個符號,這樣又形成了q-2個信源符號的縮減信源S2;

              (4)依次繼續(xù)下去,直至信源最后只剩下兩個信源符號為止,將這最后兩個信源符號分別用字符‘O’和‘1’表示;

              (5)然后從最后一級縮減信源開始,進行回推就得到每種字符所對應的由字符‘O’和‘1’組成的字符串序列,不妨將其稱為偽碼字。

              這樣,就為需要壓縮的文件建立了一個一一映射f:Si→ci=1,2,…,q。式中:Si代表不同的字符,ci代表對應字符Si的偽碼字。

              為了將偽碼字變成真正的碼字,又必須建立一個映射g:ci→ω,i=1,2,…,q。式中:ci代表不同的字符,(ωi代表對應字符ci的碼字。該映射g 的功能是將由字符串組成的偽碼字變成二進制數,比如g(010110)=(010110)2=(22)10。從而g[f(Si)],i=1,2,…,q,就是構造的哈夫曼編碼表。

              2.3 文件壓縮過程

              每從文件中讀出一個字符char,用查哈夫曼編碼表的方式得到對應的碼字,然后用這個碼字替換相應的字符g[f(char)]。當文件中的所有字符都經過了碼字替換,則得到一個比原文件要小的壓縮文件。文件之所以能夠被壓縮,是因為每個字符都占8個二進制位的空間。然而,通過碼字替換相應的字符后,有的碼字比相應的字符的碼長要短,有的碼字比相應的字符的碼長要長,但文件在被壓縮后總的長度比原來要短。

              2.4 文件解壓過程

              文件的解壓過程是文件的壓縮過程的逆過程,即將一個壓縮文件還原成它的本來面目。因為一個壓縮文件是不能夠直接使用的,只有被解壓后才能使用。一個被壓縮的文件如果不能被解壓,則這種壓縮是毫無意義的。

              哈夫曼編碼是即時碼,只要得到碼字c,則經查哈夫曼編碼表得到相應字符f-1(g-1(c)),用這個字符替換相應的碼字就是還原的過程。因此,每從壓縮文件中讀出一個碼字,就從哈夫曼編碼表查得相應的字符替換,當文件中所有的碼字被替換掉,這個解壓過程也就完成了。



            關鍵詞: 哈夫曼編碼

            評論


            技術專區(qū)

            關閉