質問
少しストリームのビットよりも優先順序はありますか(Javaの入力/outputStreamに少しストリームが多少類似していますが、ビットレベルの粒度を提供します)?
デフレートアルゴリズムのハフマン段階の出力は、非バイトをエンコードする目的で、「最も重要なビット(MSB)の前に「最小限」のビット(LSB)が「最も重要なビット(MSB)」を考慮していることを読みました。アラインされた値。 MSBから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) {...}
}
ビットパッキングをデフレートします:http://www.gzip.org/zlib/rfc-deflate.html#packing
解決
いいえ、標準的な順序はありません。問題のインターフェイスによって異なります。
所属していません StackOverflow