Всем привет, Manlikeakin💯 снова здесь, надеюсь, у вас все хорошо. В одном из наших прошлых состязаний, а точнее Операторах JavaScript, у нас была возможность обсудить различные Операторы в JavaScript, такие как Арифметические операторы, Логические операторы, Тернарные Операторы, Присваивание Операторы и Сравнение Операторы, вы можете сослаться на эту прошлую задачу и прочитать кое-что об этих концепциях. Напомнив нам об этих концепциях, давайте поговорим о новой разновидности операторов JavaScript, которые являются битовыми операторами.

Что такое побитовые операторы ?

Побитовые операторы обрабатывают свои операнды (напомним, что операнды — это значения, над которыми вы хотите выполнить операцию) как набор 32-битных двоичных цифр (нули и единиц) и выполнять действия. Однако результат отображается как десятичное значение. И мы точно знаем, что для каждой операции должны быть Операнды, а также должны быть Операторы (напомним, что операторы — это знаки , символы, обозначения и т. д., расположенные между операндами, чтобы обеспечить успешное Именно по этой причине мы рассмотрим операторы, распространенные в пространстве побитовых.

Побитовый алгоритм JavaScript  — 'И'

Оператор «И», который также обозначается символом &, на мой взгляд, довольно «строгий» в в том смысле, что все условия, связанные с ним, должны соответствовать требуемому условию (условиям), иначе ложно. Побитовое И & возвращает 1 если соответствующие биты обоих операндов равны 1, иначе возвращается 0.

Примечание. Прежде чем мы углубимся в рассмотрение некоторых примеров, напомните, что побитовые операторы обрабатывают свои операнды как набор 32-битных двоичных цифр (нули и единицы) и выполняют действия. Однако результат отображается в виде десятичного числа.

Пример 1. Побитовые операторы "И".

Этот пример, вероятно, выглядит странно или может быть странным, как будто вы, вероятно, думаете, как во Вселенной 12 & 25 = 8 ?? Что ж, приходите и давайте посмотрим, почему.

Акцент на примере 1.

Напомним, мы работаем с 32-битной двоичной операцией.

Вы помните понятие Двоичный код из школьного курса математики? Где вы можете преобразовывать различные числа из одной базы в другую, и в конечном итоге вы чаще всего получаете 0 и 1 в качестве выходных данных? Изображение, которое вы видите выше, во многом связано с этим, за исключением того, что наши 0 и 1 были преобразованы в десятичные дроби, поэтому у нас было 8 в качестве нашего вывода.

Побитовый алгоритм JavaScript  — "ИЛИ"

Побитовое ИЛИ | возвращает 1, если любой из соответствующих битов одного операнда равен 1, иначе возвращает 0.

Когда выполняется побитовая операция ИЛИ, двоичный результат будет 000000000000000000000000000011101, что преобразуется в десятичное значение 29.

Пример 2. Побитовые операторы ИЛИ

Побитовое исключающее ИЛИ JavaScript

Побитовое исключающее ИЛИ возвращает 1, если соответствующие биты различны, и возвращает 0, если соответствующие биты совпадают.

При выполнении побитовой операции XOR двоичный результат будет 000000000000000000000000000010101, что преобразуется в десятичное значение 21.

JavaScript сдвиг влево

В операторе сдвига влево ‹‹ левый операнд указывает число, а правый операнд указывает число, которое нужно сдвинуть влево. Нулевые биты добавляются справа, а лишние биты слева отбрасываются.

Сдвиг вправо для распространения знака JavaScript

В операторе сдвига вправо ›› первый операнд указывает число, а второй операнд указывает число, которое нужно сдвинуть вправо. Лишние биты справа отбрасываются. Копии крайнего левого бита сдвигаются слева, отсюда и название «распространение знака».

Например:

Заполнение нулями JavaScript сдвига вправо

Сдвиг вправо с заполнением нулями ››› сдвигает операнд вправо, заполняя нулевые биты слева. Лишние биты справа отбрасываются.

Спасибо за прочтение.