||
если хотя бы один из аргументов true, то возвращает true, иначе – false&&
если оба аргумента true, то возвращает true, иначе falsea & b
Ставит 1 на бит результата, для которого соответствующие биты операндов равны 1.a | b
Ставит 1 на бит результата, для которого хотя бы один из соответствующих битов операндов равен 1.