Приоритет и операции с битовой маской
я столкнулся с (казалось бы) очень странным случаем.
возьмите число 2 (0b10
) и маска с 1 (0b01
)
это должно производить 0b00
что эквивалентно 0.
однако, вот где Г-Н Шредингер входит:
var_dump(0b10 & 0b01); // int(0)
var_dump(0b10 & 0b01 == 0); // int(0)
var_dump(0b10 & 0b01 != 0); // int(0)
виски. Танго. Фокстрот.
Я, по общему признанию, не самый острый, когда дело доходит до побитовых операторов - так что, может быть, я ужасно, ужасно ошибаюсь где-то?
, в Python:0b10 & 0b01 == 0
= True
0b10 & 0b01 != 0
= False
... Итак?