Вопрос

Я знаю, что и слово определяет двоичный and... но что определяет логично and?

Это было полезно?

Решение

То же слово, AND, также используется для логического а также. Отказ Но два входных значения AND рекомендуются быть Хорошо сформированные флаги; истинный а также ложный Представляются двумя значениями, биты все набор (-1) и биты все не предназначены (0). Другие значения, чем они могут работать так же верно (как в C), но могут привести к тонким ошибкам.

Все операторы сравнения возвращают хорошо сформированные флаги, но, например, - не. Следующее оценивает ложь (0).

7 5 - 7 3 - AND

AND получает битные узоры 100 и 010. Результат 0 (как это делает побитовые а также).

Использованная литература:

  1. Битные манипуляции в четвертом, часть Учимся немного по битам.
  2. Раздел "Маленькая логика" в Глава 4 из Начать.

Другие советы

Далее и немного мудрый и на 64 битах. Конечно, эти операторы работают хорошо с масками. Но если эти значения все или все нули, результат также все или все нули (то же самое верно для операций по инвертированию бит или XOR.).

Логический флаг в четвертом - все или все нули. Таким образом, если входы являются логическими флагами, выход и или XOR Invert также бустевы, и эти операторы могут быть использованы для представления булевых операторов. Обратите внимание, что операции, такие как = <0 = результат в булевом флаге.

Ситуация одинакова с +. Поскольку целые числа определяются как два комплемента, + (PLUS) могут быть использованы для подписания, а также номера без знака. Таким образом, нет отдельного названия для дополнительного добавления целых чисел.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top