| |||
concatenacion de variables short buenos dias , deseo hacer una concatenacion de dos variables tipo short , para obtener un tipo float , o real de tipo flotante , alguno tiene una idea o me puede ayudar , con que comandos realizar esto , muchas gracias |
| |||
Respuesta: concatenacion de variables short hablo de concatenar 2 bytes con otros 2 bytes y luego interpretarlo como float, ya hice la concatenación de la sigueitne forma valor = (value2 | (value1 << 16)); System.out.printf("%h\n", valor); conv= (float) valor; System.out.println(Double.longBitsToDouble(valor)) ; System.out.println(Long.toBinaryString(valor)); System.out.printf ("%7.3e %n",conv); desafortunadamente no se como imprimir el valor de forma adecuada, el resultado en consola son los siguientes, y pues no entiendo ya que el valor binario es el correcto, pero el float no 41bc00cd 5.448753633E-315 1000001101111000000000011001101 1,103e+09 |
| ||||
Respuesta: concatenacion de variables short hola: Si tienes dos short (dos bytes + dos bytes) y los concatenas, obtienes como mucho un entero, resultado de primer short * 65536 + segundo short. Otro tema es que tengas un float, que por el motivo que sea, te llega como dos bytes primero y dos bytes luego. Esas parejas de bytes no sería short, sino "trozos" de un float que no tienen sentido por sí solos. Un double serían 8 bytes. Se bueno. |
| |||
Respuesta: concatenacion de variables short ya lo solucione de la siguiente forma static short value1 = 0x41bc; static short value2 = 0x00cd; static int valor; static float conv ; valor = (value2 | (value1 << 16)); val=String.valueOf(valor); System.out.printf("%h\n", valor); conv= Float.valueOf(valor); System.out.println(valor); ahora si , me imprime el resutado correcto , muchas gracias chuidiang |
Etiquetas: |