問題タブ [bitstring]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
erlang - Erlang 以外にビット文字列をサポートする言語はありますか?
私は、ある種の COMMAND|LENGTH|PARAMETERS 構造を使用して情報を交換する「バイナリ」プロトコルをよく扱います。ここで、PARAMETERS は任意の数の TAG|LENGTH|VALUE タプルです。Erlang は、次のようなパターン マッチングを使用して、メッセージ内の値を簡単に抽出します。
M = <<1, 4, 1, 2, 16#abcd:16>>.
<<1,4,1,2,171,205>>
M ビット文字列 (COMMAND|LENGTH|PARAMETERS 形式に従うメッセージ) を使用すると、Erlang パターン マッチングを利用して、コマンド、長さ、パラメーターを抽出できます。
<<Command:8,Length:8,Parameters/binary>> = M.
<<1,4,1,2,171,205>>
Parameters.
<<1,2,171,205>>
「bit-nibble-byte」指向のプロトコルを管理するために、これは非常に貴重です!
アドオン ライブラリを介しても、このような構文をサポートする言語は他にありますか?
python - Python を使用してビットストリームをファイルに保存する
Python で h.265 (または hevc も同じ) ビットストリームを str ファイルに出力する必要があります。
ビットストリーム ファイルがあり、このファイルからいくつかのデータを選択して新しいファイルに保存します。bitstringモジュールを使用してビットストリーム ファイルを処理します。
編集:私の質問は、新しいビットストリーム ファイルを作成してデータを挿入する方法です。
performance - セットのメンバーシップを見つける効率的な方法
私は 2^n ベクトルで作業しています。たとえば、n=3 可能な値は次のとおりです。
000、001、010、011、100、101、110、111
組み合わせのセットが言うことを考えると、最も効率的な方法は何かを見つけたいと思います
000、000、001、100、000、110、000、110
指定された値が可能なセットに含まれているかどうかを確認する方法。
1 つの方法は、リスト全体を調べることです (総当たり攻撃)。もう 1 つは、log_2(n) +1 のバイナリ検索など、従来の検索方法のいずれかを使用することです。
ブルーム フィルターを使用する方法もありますが、これは確率的な方法です。
メンバーシップを効率的にテストするために、ビット文字列のリストを指定して、他に何かあるかどうかを知りたいです。
c++ - c++ ビット文字列からバイト
課題として、Visual Studio でハフマン アルゴリズムの圧縮/解凍を行っています。8ビットを取得した後(10101010
たとえば)、それをバイトに変換したいと思います。これは私が持っているコードです:
最初の 2 バイトのビット文字列はバイトとして正しく出力されますが、プッシュされているバイトが 3 バイトを超えると、同じバイトが複数回取得されます。私はビット操作に慣れていないので、誰かにこれについて説明してもらうか、機能する関数について説明してもらいたいと思っていました。