Я хочу сделать простую операцию битовой маски. Допустим
uint64_t a = 348659235483;
Предполагая, что это число преобразуется в двоичное, я хочу извлечь значения из бита 6–12 (0 — MSB справа). Какой самый маленький код для этого?
двоичный файл
10100010010110110110101101/110101/0011011
Поэтому я хочу сохранить 110101
который 53
Как насчет
uint64_t a = 348659235483;
uint64_t result = (a & 0x0fe0) >> 6;
Других решений пока нет …