You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从右到左读取比特时如何正确解码?Deflate解码问题咨询

Deflate动态块手动解码逻辑修正问题

我对压缩技术有一定了解,后续会在GitHub发布相关研究成果,但目前还无法手动正确解码部分字节序列。以下是调试程序infgen的输出:

dynamic                 ! 10 0
count 259 27 14         ! 1010 11010 00010
code 16 2               ! 010
code 17 3               ! 011
code 18 5               ! 101
code 0 5                ! 101
code 8 6                ! 110
code 7 4                ! 100
code 9 4                ! 100
code 6 3                ! 011
code 10 5               ! 101
code 5 4                ! 100
code 11 3               ! 011
code 4 4                ! 100
code 3 6                ! 110 000

由于比特是从右到左读取的,我无法得到预期的字节序列:

14 5A B5 D6 E4 CA 11 CE F7

我解码第一个字节14(二进制00010100)的过程如下:

  • 第一位比特为0
  • 接下来2位比特为10
  • 再接下来5位比特为00010
    我不清楚自己遗漏了什么,已知Deflate的前17位结构为:
  • block type:3 bits
  • hdist:5 bits
  • hlit:5 bits
  • hclen:4 bits
    请帮我修正解码逻辑,我的目标是实现双向解码,例如修改code 16的长度从2改为3后,观察字节序列的变化。

内容的提问来源于stack exchange,提问作者terry franklin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 09:22:02