Decodificar bytes de datos del flujo de datos ráster GIF87a

Estoy tratando de decodificar los bytes de datos de un flujo de datos ráster GIF87a. No estoy seguro de cómo leer los códigos de longitud variable LZW (y cómo LSB ... el byte menos significativo primero se ajusta a esto). El flujo de datos ráster comienza de la siguiente manera (en hexadecimal):

06 6b 40 86 70 48 2c 1a 8f 44 4b 44 22 89 58 8e 10 c7 e1 80
06 -> tamaño de código de 66b -> bloque de bytes cuenta de 10740 -> código claro (2 ^ 6) que es 64 en decimal o 40 en hexadecimal86 -> inicio de datos reales

Especificación GIF87a:http://www.w3.org/Graphics/GIF/spec-gif87.txt

La secuencia ráster debe tener índices que apunten al mapa global (oa un padre en el árbol LZW) ... pero no estoy seguro de cómo leerlo.

¿Podría alguien convertir los primeros pocos bytes (comenzando en 86) como ejemplo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta