我壓縮了文本「TestingTesting」,十六進制的結果是:0B 49 2D 2E C9 CC 4B 0F 81 50 00.我找不出長度和距離代碼。下面的二進制數是相反的,因爲RFC表示從右到左讀取位(感謝Matthew Slattery的幫助)。下面是什麼,到目前爲止解析:放氣算法的長度值
1 BFINAL (last block)
01 BTYPE (static)
1000 0100 132-48= 84 T
1001 0101 149-48= 101 e
1010 0011 163-48= 115 s
1010 0100 164-48= 116 t
1001 1001 153-48= 105 i
1001 1110 158-48= 110 n
1001 0111 151-48= 103 g
這些剩餘的位,我不知道如何解析:
1000 0100 0000 1000 0101 0000 0000 0
最後10位(塊價值到底是X100)是我能解析的唯一部分。我認爲長度和距離值應該是7(二進制0111),因爲「測試」的長度是7個字母,它會在當前位置後複製7個字符,但我無法弄清楚它是如何在剩餘的位。我究竟做錯了什麼?
你能給碼錶? (包括len0和len1代碼) 或者,您選擇了「靜態樹」選項? – harold
該表在3.2.5節[這裏](http://tools.ietf.org/html/rfc1951#page-12) – ItsJustMe
好吧,我不得不去檢查一下,它經常發生,其他一些靜態huffman樹是使用(不幸)。 10000100是另一個T,0000100 = len = 6 00101 = dist = 5然後事情出錯 – harold