私はCを使用しており、6種類のコマンド番号を0〜5とし、3つを組み合わせて1つのバイトとして保存します。だから問題はどうやってこれらの数字をエンコードすることができるのだろうか?たとえば、バイナリエンコーディングを使用して5が101である場合、101101101が9ビットで1バイトが8であるため、555を保存できません。 ご協力いただきありがとうございます。3つの数値データを1バイトで圧縮する
-1
A
答えて
8
3桁のベース6の数として3つの数字を扱い、その値を計算する:
value = num1 * 36 + num2 * 6 + num3
num1 = value/36
num2 = (value/6) % 6
num3 = value % 6
それはバイトに収まるように、値は、215の範囲0であろう。
関連する問題
- 1. 4バイトの浮動小数点データを1バイトに圧縮
- 2. SharpZipLib:1つのファイルを1つの圧縮ファイルに圧縮する
- 3. 8個の数値(0-3)を2バイト未満に圧縮することはできますか?
- 4. Flex 3「圧縮解除後764バイト」を隠すトレースステートメント
- 5. 数値の圧縮アルゴリズム
- 6. 迅速なデータ圧縮方法3?
- 7. データ圧縮と画像圧縮の差
- 8. データ圧縮スキーム、数学
- 9. 複数のビデオクリップをプログラムで1つのビデオファイルにマージ&圧縮
- 10. QueryStringの約1000バイトのテキストを圧縮
- 11. データ圧縮モデル
- 12. WebSocketデータ圧縮
- 13. LZWデータ圧縮
- 14. データ圧縮ビデオチュートリアル?
- 15. PNG圧縮バイト配列をBMPバイト配列に変換する
- 16. DNS圧縮ポインタの例オフセット> 12バイト
- 17. 圧縮されたOpusフレームのサイズ(バイト)
- 18. boost :: iostream zlib複数のファイルを1つのアーカイブに圧縮
- 19. HTTP POSTデータをいつ圧縮するのですか?
- 20. 1つのバイトの整数データ型
- 21. 複数のファイルを1つのzipにlogbackで圧縮するには?
- 22. Common Lispでデータを圧縮するストリームインターフェイス
- 23. HTTP/2データ圧縮
- 24. データ圧縮HTTP 1.1
- 25. postgresql tcpデータ圧縮
- 26. Java圧縮および解凍バイト[]チャンク
- 27. JavaでGZIPを使用してバイト配列を圧縮する
- 28. C#でバイト[]を圧縮(および解凍)する方法は?
- 29. Firebaseのデータを圧縮する
- 30. クエリ内のデータの圧縮
これはできません。可能なコンボの数(343)は256を超えます。 –
6つのシンボルを表すには少なくとも3ビットが必要です。したがって、1つのバイトに3つの異なるシンボルを表すことはできません。 – user0042
0-5、6記号のシンボル – zpwpal