Мне нужно извлечь два целочисленных значения из байта, хранящегося в ByteBuffer (порядок с прямым порядком байтов)
ByteBuffer bb = ByteBuffer.wrap(inputBuffer);
bb.order(ByteOrder.LITTLE_ENDIAN);
Значения, которые мне нужно получить из любого байта в ByteBuffer:
длина = целочисленное значение полубайта младшего разряда
частота = целочисленное значение полубайта старшего разряда
В данный момент я извлекаю нижний пределзакажите nybble с этим кодом:
length = bb.getInt(index) & 0xf;
, который, кажется, работает отлично.Однако, как мне кажется, у меня возникают проблемы с правильной интерпретацией.
Я немного путаюсь со сдвигом или маскированием битов, которые, я думаю, мне нужно выполнить, и любой совет будет очень полезным.
Большое спасибо !!