問題タブ [bitwise-operators]

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 投票する
3 に答える
1337 参照

bit-manipulation - ビット演算子 - 疑似コード変換が必要

誰かがこのステートメントを疑似コード (または単純な英語) に翻訳できますか?

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

ruby - ルビーを使用した文字列のビット演算

ルビーの文字列に対してビット演算を実行するにはどうすればよいですか?bitwise &のような4バイトの長さの16進数で4バイトの文字列を作成したいと思い("abcd" & 0xDA2DFFD3)ます。文字列のバイト値を取得できません。ご協力いただきありがとうございます。

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

c - c - ビット操作の問題

GDB でプログラムをデバッグしています。

私に与えます:

なぜこれはすべて 1 ではないのですか? 私はそれを ~0... と定義し、次のコード行は次のとおりです。

そして、メモリをビットで調べようとすると、GDBはこれを私に与えます:

何が起こっている???

0 投票する
5 に答える
945 参照

c - Cの論理演算子のポイントは何ですか?

CにXOR論理演算子があるかどうか疑問に思っていました(ANDの&&のようなものですが、XORの場合)。XOR を AND、NOT、OR に分割できることはわかっていますが、単純な XOR の方がはるかに優れています。次に、2 つの条件の間で通常の XOR ビット単位演算子を使用すると、うまくいく可能性があることに気付きました。そして、私のテストではそうでした。

検討:

このややばかげた例のために、kiよりも大きいかjよりも大きい必要があるが、両方ではない必要がある場合、XOR は非常に便利です。

また

ビット単位の XOR ^を入れると、 「無効」が生成されました。2 つの比較の結果を 2 つの整数に入れると、2 つの整数に 1 が含まれるため、XOR は false を生成します。& と | で試してみました。ビット単位の演算子と両方が期待される結果をもたらしました。真の条件はゼロ以外の値を持ち、偽の条件はゼロの値を持つことを知っていれば、これはすべて理にかなっています。

論理的な && と || を使用する理由はあるのでしょうか。ビット演算子 &, | そして^同じように動作しますか?

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

php - C&PHP:ビット演算子を使用して設定を整数で格納しますか?

私はビット演算子に精通していませんが、以前は単純な設定を格納するために使用されていたようです。

関数にいくつかのオン/オフオプションを渡す必要があります。これには単一の整数を使用したいと思います。これらのオプションを設定して読むにはどうすればよいですか?

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

java - Javaはビット演算子を使用して2進数を出力します

こんにちは私は数値を取り、そのバイナリ表現と一緒にそれを出力するメソッドを作成しています。問題は、私のメソッドが正の数の場合はすべて0を出力し、負の数の場合はすべて1を出力することです。

私はそれを手に入れました:これはうまくいきます:

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

c - ビット演算-算術演算

以下の行をいくつかの良い例とともに説明していただけますか。

nによる左算術シフトは、2 nを乗算することと同じです (値がオーバーフローしない場合)。

と:

2の補数のnによる右算術シフトは、2 nで除算し、負の無限大に向かって丸めることと同じです。2進数が1の補数として扱われる場合、同じ右シフト演算により2 nで除算され 、ゼロに向かって丸められます。

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

c++ - 2ビット以上でビット単位のANDを使用する

私はビット演算子にかなり慣れていません。a3つの変数とがbありc、これらの値がバイナリであるとしましょう。

今、私はビット単位で実行したいと思いますそしてこのように:

d &= a &= b &= c(私が期待したように)動作しませんが、どうすればこれを行うことができますか?ありがとう

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

c - バイト内のビットをカウントする論理式を作成します

新しい候補者に面接するときは、通常、特定のバイト変数の値が1のビット数をカウントするCコードを作成するように依頼します(たとえば、バイト3には2つの1ビットがあります)。私は、8回の右シフトや、256個の事前計算された結果の定数テーブルのインデックス付けなどの一般的な答えをすべて知っています。

しかし、事前に計算されたテーブルを使用せずに、よりスマートな方法はありますか?1ビット数を計算するバイト演算(AND、OR、XOR、+、-、バイナリ否定、左右シフト)の最短の組み合わせは何ですか?

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

java - Java でのビット操作

byte[] にバイトのフラグメントがあります。配列の合計サイズは 4 で、これを正の long 数に変換したいと考えています。たとえば、バイト配列に 101、110、10、10000001 の 4 バイトがある場合、バイナリ シーケンスで表される長い数値を取得したい

これは 84279937 に等しい

Javaでそれを行う効率的な方法は何ですか?