Вопросы с тегом 'bitwise-operators'

Операторы, которые используются для выполнения манипуляций на уровне бит. Языки программирования ориентированы на байты, тогда как аппаратное обеспечение является бит-ориентированным. Поэтому возможность программирования на уровне бит может быть очень важна при программировании, особенно когда программа напрямую взаимодействует с оборудованием,
28

Как вы устанавливаете, очищаете и переключаете один бит?

Как вы устанавливаете, очищаете и переключаете бит в C/С++?
07 сент. '08 в 0:42
28

Почему мы обычно используем `||` not `|`, в чем разница?

Мне просто интересно, почему мы обычно используем логический OR || между двумя булевыми не побитовыми OR |, хотя они оба хорошо работают. Я имею в виду, посмотрите на следующее: if(true | true) // pass if(true | false) // pass if(false | true) ...
18 авг. '11 в 3:19
1

В чем смысл двойной тильды (~~) в Java?

При просмотре исходного кода Guava я наткнулся на следующий фрагмент кода (часть реализации hashCode для внутреннего класса CartesianSet): int adjust = size() - 1; for (int i = 0; i < axes.size(); i++) { adjust *= 31; adjust = ~~adjust; ...
19 апр. '15 в 23:08
13

Как работает побитовый оператор дополнения (~ тильда)?

Почему ~ 2 равно -3? Как ~ работу оператора?
26 апр. '09 в 18:29
42

Случай использования в реальном мире побитовых операторов

Каковы некоторые случаи использования в реальном мире следующих побитовых операторов? И XOR НЕ ИЛИ
19 янв. '10 в 20:45
12

Имеет ли какой-либо язык унарный логический оператор переключения?

Так что это скорее теоретический вопрос. C++ и языки (in), основанные на нем (Java, С#, PHP), имеют операторы ярлыков для назначения результата большинства двоичных операторов первому операнду, например a += 3; // for a = a + 3 a *= 3; // for a ...
20 авг. '18 в 8:46
13

Является ли хорошей практикой использовать оператор XOR (^) в Java для булевых проверок?

Мне лично нравится "эксклюзивный" оператор, когда он имеет смысл в контексте булевых проверок из-за его краткости. Я предпочитаю писать if (boolean1 ^ boolean2) { //do it } чем if((boolean1 && !boolean2) || (boolean2 && !boolea...
02 окт. '08 в 2:58
2

Что такое бит-маска?

Я новичок в программировании на С, и я столкнулся с битовой маскировкой. Может ли кто-нибудь объяснить мне общую концепцию и функцию маскировки бит? Примеры очень ценятся.
08 мая '12 в 6:07
10

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

Я - тот, кто пишет код просто для удовольствия и на самом деле не вникал в него ни в академическом, ни в профессиональном плане, поэтому такие вещи, как эти побитовые операторы, действительно ускользают от меня. Я читал статью о JavaScript, которая,...
09 нояб. '08 в 23:59
0

Что означают две левые угловые скобки?

Я видел цикл, который я никогда раньше не видел: for (int i = 0; i < (1 << list.Count); i++) Я не могу понять, что означает (1 << list.Count), может быть, кто-нибудь может мне это объяснить?
29 янв. '14 в 10:40
15

Как создать NSmap в стиле битмакс в Swift?

В документации Apple о взаимодействии с API-интерфейсом C они описывают, как перечислены индексы C-style NS_ENUM, импортируемые как перечисления Swift. Это имеет смысл, и поскольку перечисления в Swift легко представлены как тип значения enum, легко...
05 июн. '14 в 17:09
13

Разница между & и &&

Я всегда считал, что оператор && в Java используется для проверки того, являются ли оба его булевых операнда true, а оператор & используется для выполнения битовых операций с двумя целыми типами. Недавно я узнал, что оператор & так...
06 апр. '11 в 9:46
12

Различия в булевых операторах: & vs && и | vs ||

Я знаю правила для && и ||, но что такое & и |? Пожалуйста, объясните это мне на примере.
25 окт. '10 в 12:31
1

Операции прецедента и битмаски

Я столкнулся с (по-видимому) очень странным случаем. Возьмите номер 2 (0b10) и порисуйте его 1 (0b01) Это должно произвести 0b00, что эквивалентно 0. Однако здесь, где приходит г-н Шредингер: var_dump(0b10 & 0b01); // int(0) var_dump(0b10 &a...
23 февр. '14 в 22:10
13

Как? ~ (А не тильда/бит bang tilde) изменяют результат вызова метода "содержит/включены"?

Если вы читаете комментарии на странице jQuery inArray здесь, есть интересное объявление: !!~jQuery.inArray(elm, arr) Теперь я считаю, что точка с двойным восклицанием преобразует результат в тип boolean со значением true. То, что я не понимаю,...
16 февр. '12 в 18:08