Pregunta

¿Existe un orden preferido a los bits en una corriente de bits (donde una corriente de bits es algo análoga a la entrada/salida de Java, pero proporciona granularidad a nivel de bits)?

He leído que la salida de la etapa de Huffman del algoritmo Deflate considera el bit menos significativo (LSB) de un byte por venir "antes" el bit más significativo (MSB), con el propósito de codificar no byte- valores alineados. ¿Hay alguna razón para elegir el pedido de LSB a MSB en lugar de ordenar MSB a LSB? Por ejemplo, ¿esto de alguna manera permite un código de decodificación (o codificación) ligeramente más simple / más rápido?

Supongo que una clase "InputBitStream" en Java proporcionaría algunas operaciones básicas:

class InputBitStream {
    // Optimized for reading a SINGLE bit.
    public int readSingleBit() {...}

    // Optimized for reading large segments of bits,
    // not just readSingleBit() -> put in result -> repeat,
    // but if possible, shifting in a byte at a time.
    public int readMultipleBits(int count) {...}
}

Desclar el embalaje de bits:http://www.gzip.org/zlib/rfc-deflate.html#packing

¿Fue útil?

Solución

No, no hay orden estándar. Varía según la interfaz en cuestión.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top