2016-01-18 2 views
0

У меня есть один байт, который содержит верхние 4 бита, представляет собой растровое изображение для состояния системы, такое как 0x40,0x80 и более низкие значения 4 бит, такие как 0,1,2,3. Я не знаю, чтобы разобрать их. Может кто-то мне помочь. Может быть, у меня есть что-то вроде этого? Как будет выглядеть байт? Будет ли он байтом b = (байт) 0x80?1 байт, который представляет разные значения в java

+0

Что именно вы пытаетесь достичь? И что вы пробовали до сих пор? – Mureinik

+0

позволяет сказать, что у меня есть байт b = 01000000. Мне нужно, чтобы верхние 4-битовые значения были только 0x40 (64 в десятичной), а для младших бит мое значение должно быть оценено до 0. –

ответ

0

Бит маскировки. Для того, чтобы получить верхние 4 бита:

Upper=byte&0xF0 

Чтобы получить первый

First=byte&0x01 

И так далее.

+0

байт b = (байт) 00100010; int Upper = b & 0xF0; int First = b & 0x01; System.out.println (Integer.toBinaryString (First)); он выводит 0 как выход для Upper. –