3
ビットストリーム内のビットへの優先順位はありますか(ビットストリームはJavaのInput/OutputStreamと多少似ていますが、ビットレベルの粒度を提供します)。ビットストリームのビットオーダー
私は、DEFLATEアルゴリズムのハフマンステージの出力が、エンコードの目的で、バイトの最下位ビット(LSB)が最上位ビット(msb)の前に来ると考えていることを読んだことがありますバイト整列されていない値。 msb-to-lsbの順序付けとは対照的に、lsb-msb順序付けを選択する理由はありますか?例えば、これは若干単純/より速いデコード(またはエンコード)コードを何らかの形で可能にしますか?
私はJavaで "InputBitStream" クラスは、いくつかの基本的な操作を提供することを前提としています
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) {...}
}
DEFLATEビットパッキング: http://www.gzip.org/zlib/rfc-deflate.html#packing