Processing:Справочник языка Processing/Побитовый оператор AND: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) |
Myagkij (обсуждение | вклад) Нет описания правки |
||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 1: | Строка 1: | ||
{{Processing панель перехода}} | {{Processing панель перехода}} | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
= Побитовый оператор AND <ref>[https://processing.org/reference/bitwiseAND.html processing.org - & (bitwise AND)]</ref>= | = Побитовый оператор AND <ref>[https://processing.org/reference/bitwiseAND.html processing.org - & (bitwise AND)]</ref>= | ||
Строка 8: | Строка 6: | ||
==Обозначение== | ==Обозначение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
& | & | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 16: | Строка 14: | ||
Сравнивает каждый соответствующий бит в двоичном представлении двух значений. 1 & 1 дает 1, 1 & 0 дает 0 и 0 & 0 дает 0. Это легко увидеть, когда мы рассмотрим двоичное представление чисел. | Сравнивает каждый соответствующий бит в двоичном представлении двух значений. 1 & 1 дает 1, 1 & 0 дает 0 и 0 & 0 дает 0. Это легко увидеть, когда мы рассмотрим двоичное представление чисел. | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
11010110 // 214 | 11010110 // 214 | ||
& 01011100 // 92 | & 01011100 // 92 | ||
Строка 27: | Строка 25: | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
value & value2 | value & value2 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 33: | Строка 31: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
value1 - тип int, char, byte | value1 - тип int, char, byte | ||
value2 - тип int, char, byte | value2 - тип int, char, byte | ||
Строка 42: | Строка 40: | ||
===№1=== | ===№1=== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
int a = 207; // в двоичном представлении: 11001111 | int a = 207; // в двоичном представлении: 11001111 | ||
int b = 61; // в двоичном представлении: 00111101 | int b = 61; // в двоичном представлении: 00111101 | ||
Строка 51: | Строка 49: | ||
===№2=== | ===№2=== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
color argb = color(204, 204, 51, 255); | color argb = color(204, 204, 51, 255); | ||
// Синтаксис "& 0xFF" сравнивает двоичное | // Синтаксис "& 0xFF" сравнивает двоичное | ||
Строка 70: | Строка 68: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Портал/Processing}} | |||
{{Навигационная таблица/ |
Текущая версия от 18:50, 19 сентября 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Проверка/Оформление/Редактирование: Мякишев Е.А.
Побитовый оператор AND [1]
Обозначение
&
Описание
Сравнивает каждый соответствующий бит в двоичном представлении двух значений. 1 & 1 дает 1, 1 & 0 дает 0 и 0 & 0 дает 0. Это легко увидеть, когда мы рассмотрим двоичное представление чисел.
11010110 // 214
& 01011100 // 92
--------
01010100 // 84
Чтобы увидеть двоичное представление числа, используйте функцию binary() с println().
Синтаксис
value & value2
Параметры
value1 - тип int, char, byte
value2 - тип int, char, byte
Пример
№1
int a = 207; // в двоичном представлении: 11001111
int b = 61; // в двоичном представлении: 00111101
int c = a & b; // в двоичном представлении: 00001101
println(c); // печатаем в консоли "13", это десятичный эквивалент 00001101
№2
color argb = color(204, 204, 51, 255);
// Синтаксис "& 0xFF" сравнивает двоичное
// представление двух чисел и
// и устанавливает все биты в 0, кроме последних 8
// "0xFF" это 00000000000000000000000011111111
int a = argb >> 24 & 0xFF;
int r = argb >> 16 & 0xFF;
int g = argb >> 8 & 0xFF;
int b = argb & 0xFF;
fill(r, g, b, a);
rect(30, 20, 55, 55);
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |