問題タブ [bitmask]
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.
c# - ビット単位の減算
列挙型を考えると:
それから
fooにが含まれているかどうかわからない場合はc
、以前は次のように書いています。
foo.c
inの存在を確認せずにこれを行う方法はありexample
ますか?
追加に関しては、私はただ行うことができOR
、列挙値がすでに存在する場合、example
それは問題ではありません。
c# - 非ビットマスクフィールドでの偶発的なビット演算子を防ぐことは可能ですか?
C#では、次のように [Flags] 属性をビットマスク列挙に追加することをお勧めします。
[Flags]
ビットマスクではない属性 (First=1、Second=2、Third=3 など) を使用せずに、列挙型に対してビット演算を誤って実行するコードがあることを発見しました。もちろん、これは論理的に間違っていましたが、コンパイラには完全に受け入れられました。
[Flags]
これをコンパイル時のエラー/警告に変えるために、属性または他のアプローチを活用する方法があるかどうか疑問に思っています。どこから始めればよいかわかりませんが、実行可能であるように思われるので、助けていただければ幸いです。
c# - 複雑なビット マスクを使用して、日付に設定されているビットを特定する
週の日を表すビット シフト マスクがあります。
数日 (少なくとも 1 日) が 1 に設定される可能性があるため、ビットマスクを使用しています。
問題
それから私はデートをします。任意の日付。それに基づいてdate.DayOfWeek
、ビットマスクに設定されている最初の最も近い日付を返す必要があります。date
したがって、私のメソッドは、同じ日または ~ の間の任意の日に返すことができdate + 6
ます。
例 1
私のビットマスクは、すべての日が 1 に設定されていることを定義します。この場合、date.DayOfWeek
ビットマスクに が設定されているため、メソッドは同じ日付を返す必要があります。
例 2
私のビットマスクは、水曜日のみが 1 に設定されていることを定義しています。受信日が火曜日の場合、戻る必要がdate+1
あります (これは水曜日です)。ただし、受信日が木曜日の場合は、戻る必要がdate+6
あります (これも水曜日です)。
質問
これを解決する最も速くてエレガントな方法は何ですか? なぜ最速なのですか?これを数回実行する必要があるため、何らかのキャッシュ構造を使用して日付をより速く取得できる場合は、それが優先されます。
これをエレガントな方法で解決するためのガイダンスを提案できますか? ifs ステートメントと switch-case ステートメントでいっぱいの長いスパゲッティ コードで終わりたくありません...
重要: ビットマスクがパフォーマンスの向上とコードの単純化に役立つ場合は、ビットマスクを変更または別のものに置き換えることができることに注意することが重要です。したがって、ビットマスクは石に設定されていません...
可能なアプローチ
1 日あたりのオフセットの配列を生成し、それをプライベート クラス変数に保存するのが賢明です。一度生成し、後で次のように再利用します。
この方法では、ビットマスクをまったく使用しません。唯一の問題は、配列をできるだけ速く、できるだけ短いコードで生成する方法です。
php - この ini 設定にもかかわらず、PHP Deprecated エラーが引き続き発生するのはなぜですか?
error_reporting をに設定しました
php.iniで。phpinfo()による数値は22527です。
ただし、まだ多くのログを記録しています
これについて他にもいくつかの質問を見てきましたが、試したことのない解決策はありません。(古いバージョンの) VBulletin を使用しています。それは設定を変更することでしょうか?
VBulletin の forumdisplay.php に次の行があることがわかりました。
これをコメントアウトしても何も変わりませんでした。
c# - C# ビットマスク検証
以下のように、ビットマスクの検証に小さな問題があります。
私の主な問題は、値とキーが文字列値であることです。これを機能させる簡単な方法はありますか?私はこのビットマスクに非常に慣れていません。誰かが私を助けてくれれば本当に感謝しています。
c - C のビット マスキングについて。((1 << N) -1) よりも (~(~0 << N)) が優先されるのはなぜですか?
~0が最大ワードサイズのビット 1 を評価することは知っていますが (したがって、移植性に注意が必要です)、なぜ((1 << N) - 1)が推奨されないのかまだわかりませんか?
2 番目のフォームを使用して問題が発生した場合は、共有してください。
php - JavaScript の引数のビットマスク型
PHPには、複数のオプションを単一の引数に受け入れることができる関数があることがわかりました。たとえば、次のようになります。
error_reporting(E_ERROR & E_WARNING);
この種の機能を JavaScript 関数に実装したいと考えています。この種の引数を取る関数の例を知っていますか?
渡されたオプションが何であるかを関数がどのように知っているかについて、私は完全に混乱しています...
c - unsignedcharの逆マスクを計算したい
符号なし文字の逆マスクを計算したいのですが、元のマスクが0xc0の場合、逆マスクは0x3fである必要があります。つまり、すべてのビットが反転または反転されている必要があります。以下を試しましたが、表示されません。働くこと。
私が得る結果はマスク0x3invマスク0xffです
コードにバグが見つからないようです。
php - ビットマスキングはどのように機能しますか?
私はそれをグーグルで検索しましたが、ほとんどのチュートリアルは不可解です。誰かが私に教えたり、リソースを教えてくれたりできますか? 私はPHPのバックグラウンドを持っています。
java - ビット演算用のマスクの宣言
私はこのような低レベルの操作に不慣れです。誰かが私がここで犯さなければならない明らかな間違いを指摘してくれることを望んでいます。
問題はマスクの定義方法にあるようですが、修正方法がわかりません。