私はビット演算の完全な初心者であり(Cでもあまり経験がありません)、次の式にぶつかりました。
x |= (1<<y)
最初は、「xはxに等しいか、yはビット単位で左にシフトされている」という意味だと思っていましたが、次のようになることに気付きました。
x |= (y<<1)
最後に、「xはxに等しいか、1をyビット左にシフトした」という意味だと思いましたが、その1が8ビットレジスタのどこにあるのかわかりません。00000001という意味ですか?となることによって:
a = 2
b = 1<<a // so b=00000010
誰かがこのステートメントの正しい意味を教えてもらえますか?また、誰かがビット単位の構文を説明する良いリンクを持っているなら、私は感謝するでしょう。ありがとう。