1.2.9 · HinglishIntroduction to Programming (Python)

Bitwise operators — &, - , ^, ~, - , -

1,738 words8 min readRead in English

1.2.9 · Coding › Introduction to Programming (Python)


Hum operate kar kya rahe hain aslmein?

HOW to read it in Python: bin(13)'0b1101'. 0b ka matlab sirf "binary follows" hai.

Bitwise operators bit-by-bit, position by position kaam karte hain — answer ki position 0 sirf inputs ki position 0 par depend karti hai (shifts ke alawa, jo positions move karte hain).


The six operators

1. AND & — "dono on"

WHY useful: yeh masks karta hai — sirf woh bits rakhta hai jo tum maango, baaki sab zero kar deta hai.

2. OR | — "kam se kam ek on"

WHY useful: yeh bits set karta hai (chosen switches on karta hai).

3. XOR ^ — "exactly ek on / dono differ karte hain"

WHY useful: yeh bits toggle karta hai aur differences detect karta hai. Key identity: aur .

4. NOT ~ — "har bit flip karo"

5. Left shift << — bits ko left slide karo

6. Right shift >> — bits ko right slide karo

Figure — Bitwise operators — &,  - , ^, ~,  - ,  -

Shift formulas scratch se derive karo


Worked examples


Common mistakes


Recall Feynman: ek 12-year-old ko explain karo

Socho ek row of light switches hai. Ek number bas yeh hai ki kaunsi lights ON hain.

  • AND ek light on rakhta hai sirf tab jab woh dono rooms mein on ho.
  • OR use on karta hai agar woh kisi bhi room mein on ho.
  • XOR use sirf tab on karta hai jab dono rooms disagree karein.
  • NOT har switch flip kar deta hai.
  • Shift left saari switches left slide karta hai, right mein naye OFF switches lagata hai (jo number ko har slide par double karta hai); shift right unhe right slide karta hai aur switches edge se gir jaate hain (halving).

Flashcards

Ek bit position ke liye & kya output deta hai?
1 sirf tab jab dono input bits 1 hon (mask / bits rakhna)
| conceptually kya karta hai?
Bits set karta hai — output 1 agar kam se kam ek input bit 1 ho
^ (XOR) mein kya special hai?
1 jab bits differ karein; aur satisfy karta hai (toggles)
Python mein ~x ka formula?
(two's complement bit flip)
x << k kiske barabar hai?
(left shift powers of two se multiply karta hai)
x >> k kiske barabar hai?
(right shift = se integer divide, floors)
& aur and mein kya difference hai?
& bitwise hai (per-bit); and logical hai (truthiness, short-circuits, ek operand return karta hai)
12 & 10 = ?
8 (1100 & 1010 = 1000)
12 ^ 10 = ?
6 (1100 ^ 1010 = 0110)
3 << 4 = ?
48 ()
XOR swap kaise kaam karta hai?
values cancel karta hai isliye har variable doosre ka original recover kar leta hai
Precedence trap: 1 & 3 == 3 kaise parse hota hai?
1 & (3==3) ki tarah kyunki == & se tighter bind karta hai; parentheses use karo

Connections

Concept Map

base 2 sum

operate bit-by-bit

both on

at least one

bits differ

flip all bits

slide left

slide right

masks bits

sets bits

toggles bits

twos complement

derived

derived

Integer as bits

Bit positions

Bitwise operators

AND &

OR pipe

XOR ^

NOT ~

Left shift

Right shift

Flags and masks

~x = -x - 1

x times 2^k

floor of x over 2^k