0
A
答えて
8
この式は、n
の最下位の非ゼロビットをゼロにします。
ここでは8ビットと仮定すると、封筒の説明の後ろになります。 n
が結果として70
n = 01000110
n-1 = 01000101
--------
n&(n-1) = 01000100
とする、結果が0である場合、それは2のべき乗であった(またはそれがであることに0であった意味し、本来n
に設定された1ビットのみが存在した手段)。
n
が0になるまで繰り返しループすると、反復回数はn
に設定されたビット数を元々カウントします。ただし、ほとんどのプロセッサには、これを行うための組み込み操作が用意されています。
ビットハッキングが一般的に関心がある場合、このサイトで「ビンタックス」を検索すると多くのヒットが生成されます。
関連する問題
- 1. Pythonではビット単位のNOT演算子は何ですか?
- 2. Rustのビット単位NOT演算子は何ですか?
- 3. ビット演算とビットシフト演算
- 4. これらのJavaScriptビット演算子は何をしますか?
- 5. は、ビット演算子
- 6. ビット演算子
- 7. ビット演算| = C
- 8. Pythonのビット演算子 '&' 演算子
- 9. JavaScriptのこのビットでは、演算子は何をしますか?
- 10. OCamlのビット演算
- 11. SwiftのUInt64ビット演算でクラッシュする
- 12. Cでのビット演算
- 13. ビット演算&Iと
- 14. swiftでのビット演算と算術演算
- 15. このビット単位の演算子関数の問題は何ですか?
- 16. ビット単位のコード "$ n&($ n - 1)"は何をしますか?
- 17. Pythonでブール演算子を使用するためのビット演算子のオーバーロード
- 18. 演算子のアリティは何ですか?
- 19. この演算子は何ですか:&=
- 20. JavaScriptの%演算子は何ですか?
- 21. GPUでの整数演算とビット演算の実行
- 22. Data.BitsのHaskellビット演算子
- 23. Cビット演算子の例
- 24. CDbCriteriaのYiiビット演算
- 25. Javaのビット演算クラス
- 26. Firebirdのビット演算子
- 27. Apache Pigのビット演算
- 28. フリップフロップ演算子とは何ですか?
- 29. ##演算子とは何ですか?
- 30. ()=>演算子とは何ですか?
'x&(x - 1)'の結果が0の場合、 'x'は* 2の累乗*です。 [このページ](http://www.exploringbinary.com/ten-way-to-check-if-an-integer-is-a-power-of-two-in-c/)の#9を参照してください。 – meowgoesthedog
誰かが私がそのようなビスタックスを学ぶことができるところを知っているなら、Please share.Thanks。 –
https://graphics.stanford.edu/~seander/bithacks.html – pm100