how bitwise not operator works