Как работают побитовые математические инструменты

Доступно с лицензией Spatial Analyst.

Доступно с лицензией Image Analyst.

Побитовые инструменты оценивают бинарные представления входных значений по принципу «ячейка-за-ячейкой». Для каждого бита в побитовом представлении выполняется булева операция.

Логика работы различных побитовых инструментов показана в следующих сценариях. Стрелки используются для обозначения хода операции конвертации входных значений в бинарные представления по основанию 2, анализа и возвращения результата в виде десятичных (по основанию 10) значений.

Логика побитовых инструментов

Инструменты Побитовый оператор «And», «Or» и «XOr «

  • Для Побитового оператора And для каждого бита, где оба входных значения 1, выходное будет 1. Если один или оба бита равны 0, выходное значение бита 0.
  • Для Побитового оператора Or для каждого бита, где один или оба входных значения 1, выходным будет 1. Если оба бита равны 0, выходное значение бита 0.
  • Для Побитового оператора XOr для каждого бита, где одно входное значения 1, а другое 0, выходное будет 1. Если оба бита равны 1 или оба равны 0, выходным значением бита будет 0.

Пример побитовых операторов And, Or и XOr
Пример побитовых операторов And, Or и XOr

Побитовый оператор Not

Для инструмента Побитовый оператор Not выполняется побитовое дополнение двоичного представления входного значения.

Это означает, что для каждого входного бита со значением 1 выходное значение будет равно 0. Входные биты со значением 0 получат выходные значения 1.

Пример побитового оператора Not
Пример побитового оператора Not

Инструменты Побитовый оператор Left Shift и Right Shift

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

  • Для инструмента Побитовый оператор Left Shift значение для каждого бита смещается влево на количество битовых позиций, заданное во вторых входных данных. Значение, присваиваемое самому левому биту, будет потеряно.

    Эффект сдвига влево на один бит приведет к умножению на 2.

  • Для инструмента Побитовый оператор Right Shift значение для каждого бита смещается вправо на количество битовых позиций, заданное во вторых входных данных. Значение, присваиваемое самому правому биту, будет потеряно.

    Эффект сдвига вправо на один бит приведет к делению на 2 с округлением.

Пример побитовых операторов Left и Right Shift
Пример побитовых операторов Left и Right Shift

Работа с NoData

Если входное значение ячейки – NoData, выходное значение также будет NoData.

Связанные разделы