問題タブ [bitwise-or]

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 に答える
1320 参照

python - Python: 整数間のビットごとの OR

ビット単位の操作を実行すると、Python で奇妙な動作が見られます

上で、OR の予想される動作を確認します。数値は右側に配置され、各ビットが OR 演算されて結果が生成されます。ただし、私の意見では、2 つの同一の整数を OR すると、結果は常に 0 になるはずです。

これはバグですか、それとも非常に奇妙な機能ですか? 誰でも説明できますか?

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

java - ORビット演算の数式?

*+-、などの基本的な演算子を使用したビットごとの OR 演算の数式はあり/ますか? 私が探しているものの例 (シフトの場合) は、にn<<a変わりn*Math.pow(2,a)ます。

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

symfony - Doctrine DQL "inclusive or"

Doctrine DQLで単純な「包括的または」を実現する方法があるかどうか知りたいですか?

MySQLで次のことができます

また

しかし、これらはどちらも DQL では機能しません

解決策はまだ私自身の質問に答えることができません:/

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

c - 次のコードは C でどのように評価されますか?

上記のコードはどのように評価されますか? 特に声明:

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

c - 警告なしの unsigned int のビットごとの OR

次のコードを書き直そうとしています。

最近の gcc を使用すると、次の警告が表示されます。

コードの読みやすさを維持しながら、この警告を回避するには、ビットごとの OR をどのように書き直すべきですか。unsigned int iはライブラリ コードの奥深くにあるため、これを int に変更することはできません。

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

java - Java ではビット演算 OR on (double) は不可、JavaScript では可能

これは、Google Chrome Javascript コンソールからの出力です。
http://i.stack.imgur.com/gefcZ.png

以下は、DrJava Java コンソールからの出力です。
http://i.stack.imgur.com/bQ7hS.png

私のJavascriptコードは

両方の変数が整数の場合、Java では正常にコンパイルされるようですが、明らかに JavaScript では double です。それでも

typeof baseCPUCyclesPerIteration明らかにする"number"

結果から、double データ型であることが明らかになります。OR 0ビット単位が Javascript の double で機能するのに、Java double では機能しない理由がわかりません。

の目的は、| 0double データ型の小数点をトリムすることだけのようです。私はJavaで同等のものになる(int)か、(long)キャストが正しいと推測していますか? または、ビット単位| 0では、javascript で小数点をトリムするだけではありませんか?

編集:| 0javascriptでトリミングするだけでなく、これを実行しました。8899811111.111113453456754645 | 0戻ってきました309876519
(私は二重制限を超えましたが、lolはまだjavascriptで計算しようとしていますが、これがオーバーフローが発生する場所であると推測しています)。

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

assembly - 2 つの 2 進数のビットごとの OR

Computer Systems and Networks の過去の論文から抜粋:

この質問はアセンブリ言語に関するものです a) ビット単位または 2 つの 2 進数とは何かを説明してください。例を挙げます。【5点】

私はちょうどいくつかの一般的な改訂を行っているところです.マークスキームがないので、私が正しいかどうかを判断するのは難しいので、アドバイスをしたり、正しい方向に向けてください.

私の考え: この場合のビットごとの OR は、同じ長さの 2 つの 2 進数を取り、それらに対して論理的包含 OR を実行します。

この答えで十分だと思いますか?

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

c - 整数とその負数のビットごとの OR の目的

NaNIEEE の単精度浮動小数点と倍精度浮動小数点の両方での実装と表現に興味があり、「is NaN」関数のこの実装を見つけました。すなわち:

の目的を理解していませんでし(lx|(-lx)) >> 31た。頭の中で推論に失敗した後、すべての整数でテストし、それ以外の場合は 0、lx = 0それ以外の場合は 1 になることがわかりました。

私が思いついた唯一の理由は(lx != 0)、C 標準が真の操作に割り当てられる整数値を定義していないために代わりに使用できなかったこと (たとえば、真の場合は 1 であることが保証されていない)、またはおそらく!=負の値よりも遅いことです。 or-and-bit-shift。そうでなければ、私は困惑しています。

参考までに、エラーが発生した場合に備えて、すべての整数を試すために使用したコード。

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

c++ - 行全体または列全体でビット単位の演算子を使用する方法は?

最近、c++ opencv を使用した画像処理を検討しています。そして、行列の各列または行を「または」にする必要があります。例えば

長い間探しましたが、見つからないだろうと思います。私を助けてください !

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

python - ビット単位の OR 演算を逆にする方法は?

これが私がやったことです:

返す

私はこれがだからであることを理解してい0b1011101 | 0b11000111ます0b11011111

しかし、逆の操作をしたいとします。と0b1011101の間のビット単位の操作から取得するにはどうすればよいですか?0b110001110b11011111