Что подразумевается под «обоими битами» при использовании побитовых операторов

1

Эта страница W3Schools описывает побитовое И как:

Устанавливает каждый бит в 1, если оба бита равны 1.

Приведен пример:

5 & 1 возвращает 1, то же, что и 0101 & 0001 возвращает 1.

Насколько мне известно, 0101 - 4 бита, а 0001 - еще 4 бита. Итак, что означает "если оба бита равны 1"? О каких битах они говорят?

  • 0
    Пары битов в соответствующих позициях каждого из байтов.
  • 0
    Те, в каждой позиции. Например. первый бит первого числа по сравнению с первым битом второго числа - оба равны 0. Только с последним битом каждого числа оба являются битами 1, поэтому он разрешается в 0001
Показать ещё 2 комментария
Теги:
bitwise-operators

1 ответ

2
Лучший ответ

Побитовая операция является побитовой, каждый бит переходит в CPU и объединяется с другим битом.

Таким образом, 0001 и 0101, каждый из четырех выходных бит вычисляется в соответствии с этой формулой. Если бит в позиции 1 в левом операнде И бит в позиции 1 в правом операнде равен 1, выход получает бит, установленный в положение 1.

Более сильный процессор может вычислять многие из этих операций параллельно, 64-разрядный процессор может выполнять 64 бита параллельно и т.д. В вашем примере 4 бита, которые будут вычисляться параллельно.

(Затем эти операции объединены в CPU с другими арифметическими операциями в ALU, привязкой данных в TCM и т.д. В разных частях ЦП.)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню