Манипуляции с битами в JS

Рассмотрим три операции — установка нужного бита в числе, сброс бита и инверсия.

У нас есть число N и номер бита i. Номер бита нумерует биты, начиная с нуля.

Прежде всего нам понадобится маска, с помощью которой мы произведем нужную нам операцию.

Это будет работать для 32-битных целых. Напоминаю, что в JS максимальная величина целого числа — 53 бита.

Установка бита

Следующая операция установит i-й бит:

Сброс бита

Следующая операция сбросит бит:

Переключение (инверсия) бита

Следующая операция инвертирует состояние i-го бита:

Мало букафф? Читайте есчо !

Функция подсчета не нулевых бит (JS)

Май 9, 2023 г.

Когда требуется подсчитать количество не нулевых бит в числе, то следуют алгоритму: проверяют четность числа и смещают на каждой итерации на один разряд вправо, пока число не обратится в ноль. Есть и другой алгоритм, который обходится без цикла. ...

Читать

Копируем в буфер обмена средствами javascript

Февраль 25, 2017 г.

Такая задача возникает не часто, но если вы заботитесь о пользователе, и помогаете ему скопировать в буфер обмена нужную информацию - то пользователь будет вам признателен. Так вы заработаете ещё один плюсик в копилку "юзабилити". Разберем ключевые ...

Читать

Преодоление кросс-доменности в iframe

Январь 14, 2018 г.

Дочерние документы не могут самостоятельно читать данные из родительского фрейма,  если тот находится на другом домене. Возможны исключения для под-доменов одного и того же доменного имени. Все это связано с мерами безопасности и т.п. чепухи. :). Для ...

Читать

Как избежать изменения позиции scroll в документе после установки #hash

Февраль 21, 2020 г.

При установке значения hash в url окна, к примеру так: window.location.hash = '#something'; браузер прокрутит документ до позиции элемента вида <a name='something'></a>. Иногда такое поведение является не желательным. После изменения позиции ...

Читать
 

Комментарии к «Манипуляции с битами в JS»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: