問題タブ [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.
enums - fsharp でのパターン マッチングとビットごとの列挙型フラグの組み合わせにより、「let mutable」をきれいに回避する
次の (変更可能な) 例を考えてみましょう。
この例を使用して、私たちがよく遭遇する状況を例示しました。アイデアは単純です。文字列 (または任意の複雑な条件) に基づいて、0 個以上の列挙型フラグを組み合わせる必要があります。
それを行う最も簡単な方法は、上記のようにミュータブルを使用することだと思います。ミュータブルを使用しない場合、他にも無数の方法を考えることができますが、どれも非常にきれいではないようです。
- 戻りフラグを組み合わせた再帰関数 (面倒)
enum.Combine
Don Symeが示唆するように、各配列エントリにif条件またはパターンマッチを使用します(醜い)|||
それぞれが条件を持っている(これも醜い)組み合わせ式の長い範囲
できればパターンマッチングを使用し、もちろん可変性を使用しない、より単純で直接的な方法があると確信しています。1日の遅い時間かもしれませんが、今は思いつきません。誰か光を見せてくれませんか?
php - PHP ビット単位関数の入力パラメータをテストする方法
プログラミングでは、以下の 2 番目の入力変数のように、1 つの関数入力変数でパラメーターをチェーンできる場合があります。
PHP では、この 1 つのパイプ文字(|)
をビット単位OR
演算子と呼んでいます。foo()
内部に何かを追加して、$vFlags
どのフラグが設定されているかを確認するにはどうすればよいですか?
java - Java でのビット単位の XOR 演算
プログラムの実行中にこのエラーに直面しています。
「二項演算子 '^' の不適切なオペランド型です。最初の型:int 2 番目の型:int[]」
これは私を大いに助けます、ありがとう。
c - ビットごとの OR 代入
これは私が取り組んでいるコードです。それぞれ 0 から 31 の範囲の 6 つの整数を格納することになっているため、それぞれに 5 ビットのスペースが割り当てられます。何らかの理由で機能していません。ループ内で vals に代入すると、読み込まれた現在の値のみが vals に格納されているようです。何が問題なのか分かりますか?
c - 0 から 1 までの整数のビットを設定する
以下にコード全体を含めましたが、私が疑問に思っているのはsetBit
関数だけです。x = 1 << bitNum
0001をシフトするだけですが、数字に応じて左に多くのスペースがありますがbitNum
、最後の行がわかりません(*u |= x)
なぜここでポインターが使用されるのですか?
matlab - Bitwise または Matlab の配列上?
2 進数の大きな配列があり、配列の 1 つの次元に対してビットごとの OR を実行したい:
これを行う簡単な方法はありますか?私は実際にn次元配列に取り組んでいます。試してみbi2de
ましたが、配列が平坦化されるため、添え字が複雑になります。
matlabに機能があれば簡単にできたのですが、fold
ないと思います。
OK @Divakar は実行可能なコードを求めたので、ここで明確にするために、2D 配列で機能する可能性のある長いバージョンがあります。
ループせずに実行できますか?bitor
もちろん、任意の数の引数を取ることができることを望んでいました。それなら、でできたはずmat2cell
です。
java - |の使用 Javaで
次の方法で定数が定義されているJavaコードに出くわしました
|
このコードでの使用は何ですか?
javascript - ビットごとの OR が予想以上の結果を出す
Bitwise OR を使用する必要がある単純なモジュールをプログラミングしています。私の計画は、4 つの数値を「ビットごとに OR 演算」することです。
- 0x00000004
- 0x00000010
- 0x00000040
- 0x80000000
それらをコンソールに出力して、16 進数ではなく 2 進数で視覚化しました。
ここまでは順調ですね。それらすべてに対して Bitwise OR 演算子を一緒に使用すると、かなり奇妙な結果が得られます。
それぞれバイナリで:
私は実際にこれを期待していたので、これは私には明らかに間違っているようです:
それぞれ10進数で:
または16進数で:
私が知らなかった制限はありますか?(私は実際に MDNのリファレンスを調べました)それともこれはバグですか? または、Bitwise OR の使用法を誤解していますか?
c# - ビットごとの OR で SqlBulkCopyOptions を定義しますか?
そこで私は上級開発者の 1 人にトランザクション スコープ関連の問題を解決するための助けを求めました。彼は私のデスクに来て、SqlBulkCopy で別のオーバーロードを使用し、SqlBulkCopyOptions パラメーターに対して次のようなことを行いました。
現在は機能していますが、bitwise or
ここで a が何を意味するのかわかりません。ある程度理解しているつもりで実際に使ったことはありませんでしたが、この使い方には頭を悩ませました。ええ、私は先輩に説明を求めていませんでした..誰かが私がその声明が何をするかを理解するのを手伝ってくれることを望んでいました. ネット上のビット単位または例のほとんどは、いくつかの数値を使用していますが、これは取得できます (と思います)。
c# - | とは | ここでC#で?
次のコード ブロックには、いくつかのビット単位の OR があります。これまで使ったことがないので、コード ブロックの意味を理解しようとしていました。
上記のブロックで、doc.MailMerge.CleanupOptions を使用した場合、CleanupOptions が等しいステートメントをどのように選択するのでしょうか? それとも、それらはすべて組み合わされていますか?