Исходя из 0x11
, я собираюсь предположить , что вы работаете с C или чем-то достаточно похожим, чтобы использовать те же побитовые операторы.
В этом случае вы начинаете с создания битовой маски, в которой есть бит, о котором вы заботитесь. Чтобы получить маску с этим установленным битом, вы обычно берете 1
(в котором установлен только его младший значащий бит) и сдвигаете его влево на соответствующее количество мест, чтобы поместить этот единственный бит в положение, в котором вы заинтересованы.
Затем вы делаете побитовую and
между маской и входом.
Наконец, вы проверяете, был ли результат этого and
нулевым или нет.
int position = 2;
int bitmask = 1 << position;
if (input & mask)
// that bit was a 1
else
// that bit was a 0