применяя битовый вектор для маски

Я хочу сделать простую операцию битовой маски. Допустим

uint64_t a = 348659235483;

Предполагая, что это число преобразуется в двоичное, я хочу извлечь значения из бита 6–12 (0 — MSB справа). Какой самый маленький код для этого?

двоичный файл

10100010010110110110101101/110101/0011011

Поэтому я хочу сохранить 110101 который 53

-1

Решение

Как насчет

uint64_t a = 348659235483;
uint64_t result = (a & 0x0fe0) >> 6;
4

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector