問題タブ [bit-fields]

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.

0 投票する
2 に答える
1422 参照

programming-languages - OpenCL 偽ビットフィールド

それはまったく可能ですか?現在、OpenCL が通常のビットフィールドをサポートしていないことはわかっています。

bool myBool[64] などから明確な 64 ビットを取得する方法はありますか

または、リモートで関連する役立つものはありますか?値と比較し、パターンの単一ビットをすばやく操作できるようにするためのいくつかの静的ビットパターンが必要です。

0 投票する
4 に答える
4667 参照

iphone - Core Dataでバイナリフラグを使用するにはどうすればよいですか?

int32CoreDataデータベースに属性があります。これintenumビットフィールドとして使用します。

NSPredicateこのintのバイナリ値に基づいてアイテムをクエリするためのを作成することは可能ですか?のようなもの@"bitFieldAttribute & 0x0001"

また、これがバイナリ型の属性で可能かどうか疑問に思っていますか?

0 投票する
1 に答える
1322 参照

c# - C#のビットフィールドとしてのバイト配列?

バイト配列を大きなビットフィールドとして扱うことを可能にする組み込みクラスまたは.NETに何かがありますか?

0 投票する
2 に答える
592 参照

c - これが最適な方法ですか?C ビットフィールド

DWORD の特定のビット数を設定またはクリアする関数を作成しました。私の機能は動作します。それを機能させるのに助けは必要ありません。ただし、選択した方法が最速の方法であるかどうか疑問に思っています。

これがどのように機能するかを説明するのはかなり難しいです。DWORD を含む 2 つの配列があり、DWORD の左側と右側のビット (すべてバイナリ 1) で埋められます。設定またはクリアしたいビットを除いてすべてのビットが埋められたマスクを作成し、そのマスクに基づいてビットごとの演算子でそれらを設定します。このような単純なタスクはかなり複雑に思えますが、私が思いつく最速の方法のようです。少しずつ設定するよりもはるかに高速です。

0 投票する
3 に答える
2689 参照

c# - C#のStrucLayoutとFieldOffsetを使用したユニオンビットフィールドの表現

C#でユニオンを表すには、StructLayout [LayoutKind.Explicit)]および[FieldOffset(x)]属性を使用して、ユニオン内のバイトオフセットを指定する必要があることを理解しています。ただし、表現したい次のユニオンがあり、FieldOffset属性はバイトのサイズだけオフセットされています。

ユニオンの内部構造体でわかるように、少しオフセットできるものが必要なため、FieldOffsetを使用できません。

これに対する解決策はありますか?DLL関数を呼び出そうとしていますが、データ構造体の1つがそのように定義されていて、この結合構造体を最適に表現する方法についてのアイデアが不足していました。

0 投票する
2 に答える
359 参照

c++ - 複数のビットフィールドからの相互に排他的な連続範囲

(これはCSクラスの宿題のように見えますが、CSクラスの宿題ではありません)

0 から 22 までの範囲を表すためにビットフィールドを使用しています。たとえば、入力としていくつかの異なる範囲があります (順序は関係ありません)。読みやすくするために.for0Xforを使用しました。1

通常、ビットフィールド範囲の数は 10 未満ですが、潜在的に 100 になる可能性があります。その入力から、次のように、相互に排他的な連続した範囲を計算したいと思います。

(繰り返しますが、出力順序は重要ではありません。相互に排他的で連続している必要があります。つまり、穴があっては.....XXX.......XXXXX....なりません。2 つの個別の範囲に分割する必要があります)。

いくつかのアルゴリズムを試しましたが、いずれもかなり複雑で洗練されていません。私が非常に役立つの.....XXX.......XXXXX....は、穴があることを検出する方法と、穴内のビットの 1 つのインデックスを決定する方法です。

編集:ビットフィールドの範囲は、マップ上のズームレベルを表します。これらは、Mapnik (特に OpenStreetMap で使用されるタイル レンダリング システム) の XML スタイルシートを出力するために使用することを目的としています。

0 投票する
4 に答える
4346 参照

c - ビットフィールドのオーバーフロー

ビットフィールドにアクセスするたびにCコンパイラがモジュロ2^nを実行することを信頼できますか?または、以下のようなコードがオーバーフローを出力しないコンパイラ/最適化はありますか?

よろしくお願いします、フロリアン

0 投票する
2 に答える
130 参照

java - ダービー-目的のフィールドへの追加を処理する方法

ユーザー向けのテーブルを作成し、その目的を追跡したいと考えています。目標自体は、1000ではないにしても、100のオーダーであり、独自のテーブルに保持されますが、誰がそれらを完了したかはわかりません。使用可能な目標を定義するだけです。

これで、Java環境では、ユーザーは目的のためにjava.util.BitSetを使用できるようになります。だから私は行くことができます

内部的には、BitSetはlong[]を使用してストレージを実行します。私のダービーデータベースでこれを表す最良の方法は何でしょうか?それらは実際にはユーザーの要素であるため、可能な限りAppUserテーブルの列に保持することをお勧めします。

Derbyは(私の知る限り)配列をサポートしていません。列の制限はわかりませんが、特にデータベースに次のようなクエリを実行しないことがわかっているため、1000列の場合は問題があるようです。

保存とビットセットへのマーシャリングの両方のオプションは何ですか?java.util.BitSetの実行可能な代替手段はありますか?一般的なアプローチに欠陥はありますか?私はアイデアを受け入れています!

ありがとう!

*編集:可能であれば、テーブルの変更ではなく、データの変更のみで目標を追加できるようにしたいと思います。しかし、繰り返しになりますが、私はアイデアを受け入れています!

0 投票する
2 に答える
5987 参照

c - 構造体の共用体を含む構造体を持つ C のビットフィールド

うーん... を印刷するとsizeof(struct MyStruct)、このコードに対して (2 ではなく) 3 が出力されるのはなぜですか?

問題が発生した場合に備えて、Windows 7 x64 で MinGW GCC 4.5.0 を実行していますが、正直なところ、結果は奇妙で、コンパイラと OS はここではあまり重要ではないと思います。:\

0 投票する
3 に答える
96 参照

c - 構造体に関する基本的な質問

私はWindowsデバイスドライバーを使用していますが、次のような構造体コードが表示されました。

それぞれUINT64が単一のビットを表しますか?コロンはビットを表しますか?