0

Preon を使用してデコードしようとしているバイナリ ストリームには、5 つの連続しないニブルで構成される値があります。次に例を示します。

16 進データ: 00A00000F200EE0000

ゼロ以外のマークされたニブルから AF2EE に値を抽出する必要があると考えてください。Preon を使用してそれは可能ですか? もしそうなら、そのようなヒントを教えてください。

PS: ゼロは単なる例であり、必要な位置のニブルが固定されているため、抽出するニブルを選択する基準を表すものではありません。

おそらく@wilfred-spingerが助けてくれるでしょうか?

4

1 に答える 1

1

ニブルの位置が固定されている場合、はい、これは可能です。クラス フィールドは次のようになります。

 @BoundList(size = "8")
 private byte[] reserved0;

 @BoundList(size = "4")
 private byte[] nibble1; // location of A

 @BoundList(size = "20")
 private byte[] reserved1;

 @BoundList(size = "4")
 private byte[] nibble2; // location of F

 @BoundList(size = "4")
 private byte[] nibble3; // location of 2

 // etc

Preon でオフセットを指定して、0 ビットのフィールドを作成する必要がないようにする方法があると思いますが、頭の中で思い出すことができません。

それが役立つことを願っています。

于 2015-01-16T17:47:14.227 に答える