ソケット経由でデータを読み取っています。整数データ型は問題ありません。System.BitConverter メソッドは変換を正しく処理しています。(つまり、エンディアンの問題は心配する必要がないと思いますか?)
ただし、 BitConverter.ToDouble はデータの浮動小数点部分に対しては機能しません...ソース仕様は私にとっては少し低レベルですが、より重要な方向に正のバイトオフセットを持つバイナリ固定小数点表現について話しています。重要でない方向の負のバイト オフセット。
私が行った調査のほとんどは、C++ またはサインとコサインを処理する完全な固定小数点ライブラリを対象としており、この問題にはやり過ぎのように思えます。誰かが、たとえば-3バイトのオフセットを持つ8バイトのバイト配列からfloatを生成するC#関数を手伝ってくれませんか?
要求されたフォーマットの詳細:
固定小数点データの符号付き数値は、2 進の 2 の補数表記を使用して表されます。固定小数点データの場合、各データ パラメータの値は、参照バイトに関連して定義されます。参照バイトは 8 ビット フィールドを定義し、測定単位は LSB 位置にあります。参照バイトの LSB の値は 1 です。バイト オフセットは、参照バイトに対するデータ要素の最下位バイトの位置を示す符号付き整数によって定義されます。データ要素の MSB は符号ビットを表します。パラメータの絶対値の MSB と最上位バイトの MSB の間のビット位置は、符号ビットと同じ値でなければなりません。
浮動小数点データは、IEEE ANSI/IEEE Std 754-2008 に準拠したバイナリ浮動小数点数として表されます。(この文は、レッドニシンである可能性がある別のセクションからのものです)。