poner - php<=>
Precedencia y operaciones de máscara de bits (1)
En realidad estás haciendo esto:
var_dump(0b10 & (0b01 == 0));
var_dump(0b10 & (0b01 != 0));
Tratar:
var_dump((0b10 & 0b01) == 0);
var_dump((0b10 & 0b01) != 0);
Me encontré con un caso (aparentemente) muy extraño.
Tome el número 2 ( 0b10
) y 0b10
con 1 ( 0b01
)
Esto debería producir 0b00
que es equivalente a 0.
Sin embargo, aquí es donde entra el señor Schrödinger:
var_dump(0b10 & 0b01); // int(0)
var_dump(0b10 & 0b01 == 0); // int(0)
var_dump(0b10 & 0b01 != 0); // int(0)
Whisky. Tango. Fox.
Estoy, sin duda, no es el más agudo cuando se trata de operadores bit a bit, así que tal vez me he equivocado de forma horrible y horrible en alguna parte.
Sin embargo, en Python:
0b10 & 0b01 == 0
= True
0b10 & 0b01 != 0
= False
...¿asi que?