Как появляются результаты побитового оператора?
Я очень удивлен, что не могу найти ответ на этот простой звучащий вопрос в Google. После проверки около десятка разных страниц я просто собираюсь спросить здесь ...
Согласно сэта страница, 3 и 5 результат в 1. Кроме того, 3 | 5 результат в 7. Единственный вопрос, который у меня есть, это просто:
Как мы получаем 1 за 3 и 5?Как получить 7 за 3 | 5?Кроме того, как насчет отрицательных чисел?
Как 8 & -8 приводит к 8?Конечно же, писать следующее в Java:
System.out.println(3&5);
System.out.println(3|5);
System.out.println(8&-8);
Производит этот вывод:
1
7
8
Но опять же, как эти результаты определяются / рассчитываются?