CPPPROGLIB Telegram 4708
🧨 Как установить, очистить и переключить один бит?

❗️Установка бита

- Используется побитовый оператор OR (|), чтобы установить n-й бит number в 1 значение
- Стоит помнить, что сдвиг больше, чем на ширину типа, является неопределенным поведением

typedef unsigned long ulong;

ulong bit_set(ulong number, ulong n) {
return number | ((ulong)1 << n);
}


❗️Очистка бита

- Используется побитовый оператор AND (&) , чтобы установить n-й бит number в 0 значение
- Вы должны инвертировать битовую строку с помощью побитового оператора NOT (~) , затем оператор &
ulong bit_clear(ulong number, ulong n) {
return number & ~((ulong)1 << n);
}


❗️Переключение бита

- Используйте побитовый оператор XOR (^) для переключения n-го бита number

ulong bit_toggle(ulong number, ulong n) {
return number ^ ((ulong)1 << n);
}


❗️Проверка бита
- Чтобы проверить бит, сдвиньте number вправо на n бит , затем воспользуйтесь &

bool bit_check(ulong number, ulong n) {
return (number >> n)& (ulong)1;
}
👍271😁1



tgoop.com/cppproglib/4708
Create:
Last Update:

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

❗️Установка бита

- Используется побитовый оператор OR (|), чтобы установить n-й бит number в 1 значение
- Стоит помнить, что сдвиг больше, чем на ширину типа, является неопределенным поведением

typedef unsigned long ulong;

ulong bit_set(ulong number, ulong n) {
return number | ((ulong)1 << n);
}


❗️Очистка бита

- Используется побитовый оператор AND (&) , чтобы установить n-й бит number в 0 значение
- Вы должны инвертировать битовую строку с помощью побитового оператора NOT (~) , затем оператор &
ulong bit_clear(ulong number, ulong n) {
return number & ~((ulong)1 << n);
}


❗️Переключение бита

- Используйте побитовый оператор XOR (^) для переключения n-го бита number

ulong bit_toggle(ulong number, ulong n) {
return number ^ ((ulong)1 << n);
}


❗️Проверка бита
- Чтобы проверить бит, сдвиньте number вправо на n бит , затем воспользуйтесь &

bool bit_check(ulong number, ulong n) {
return (number >> n)& (ulong)1;
}

BY Библиотека C/C++ разработчика | cpp, boost, qt


Share with your friend now:
tgoop.com/cppproglib/4708

View MORE
Open in Telegram


Telegram News

Date: |

Telegram channels fall into two types: Ng was convicted in April for conspiracy to incite a riot, public nuisance, arson, criminal damage, manufacturing of explosives, administering poison and wounding with intent to do grievous bodily harm between October 2019 and June 2020. The court said the defendant had also incited people to commit public nuisance, with messages calling on them to take part in rallies and demonstrations including at Hong Kong International Airport, to block roads and to paralyse the public transportation system. Various forms of protest promoted on the messaging platform included general strikes, lunchtime protests and silent sit-ins. Other crimes that the SUCK Channel incited under Ng’s watch included using corrosive chemicals to make explosives and causing grievous bodily harm with intent. The court also found Ng responsible for calling on people to assist protesters who clashed violently with police at several universities in November 2019. How to Create a Private or Public Channel on Telegram?
from us


Telegram Библиотека C/C++ разработчика | cpp, boost, qt
FROM American