В каком байте находится бит?

Немного странно, но вот....

Как я могу математически определить, в каком байте находится определенный бит?

Например, если у меня есть 32-битное слово, есть четыре 8-битных байта. Я хотел бы знать, в каком из этих четырех байтов находится определенный бит. Итак, используя несколько случайных битов в качестве примера, бит 7 находится в первом байте, бит 12 — во втором, 19 — в третьем и так далее.

Любые идеи?

Спасибо


person cosmarchy    schedule 03.10.2012    source источник


Ответы (1)


Если вы нумеруете свои биты и байты с нуля, деление на восемь с использованием целочисленного деления должно помочь:

 7 / 8 = 0 // Bit #7 is in byte #0
19 / 8 = 2 // Bit #19 is in byte #2
person Sergey Kalinichenko    schedule 03.10.2012