Trabajo con bytes

15/07/2008 - 16:52 por Catalin Lungu | Informe spam
Hola,
Como podria escribir un número de 0..4095 en 2 bytes de la siguiente forma.

b1=0 b2=0 b3=0 b4=0 y en los siguientes 12 bits el numero.

Muchas gracias.
 

Leer las respuestas

#1 Alberto Poblacion
15/07/2008 - 17:02 | Informe spam
"Catalin Lungu" wrote in message
news:
Como podria escribir un número de 0..4095 en 2 bytes de la siguiente
forma.

b1=0 b2=0 b3=0 b4=0 y en los siguientes 12 bits el numero.



unsigned numero = 4095;
byte[] resultado = new byte[2];
resultado[0] = (byte) (numero >> 8);
resultado[1] = (byte) (numero & 0xff);

Lo anterior supone que el primer byte (0) tiene los cuatro ceros más los
cuatro bits más significativos del número, y el segundo byte (1) tiene los
ocho bits menos significativos. Si los quieres en otro orden, basta con que
juegues adecuadamente con los operadores de desplazamiento de bits (>> y <<)
y con los "y" y "o" lógicos (& y |) de forma similar a la indicada arriba.

Preguntas similares