Помните, что при операции побитового И (&
) N-й бит результата равен только 1, если оба соответствующих бита операндов равны 1.
Так & -ing 0xf0
значение 4-го байта (array[3]
) по существу заменяет младшую половину этого байта на 0, оставляя старшую половину нетронутой.
1010 1010
&
1111 0000
==== ====
1010 0000
^^^^ ^^^^
|| ||
as is zeroed
Теперь осталось только проверить это значение по отношению к 0xe0
.