un short en 4 bytes

05/02/2008 - 16:26 por Aitziber | Informe spam
HOla.
Necesito representar un short en 4 bytes y no se como hacerlo.
La operación contraria la tengo hecha, pero esta no se como hacerla.
Sería lo contrario a lo siguiente:
public static short caracter_to_short(byte valor1, byte valor2, byte valor3,
byte valor4)

{

unsafe

{

short result;

byte* p = (byte*)&result;

//primero mete en la parte baja, por lo tanto le mandamos primero los
ultimos valores

*p = caracter_to_byte(valor3, valor4);

p++;

*p = caracter_to_byte(valor1, valor2);

return result;

}

}

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
05/02/2008 - 16:29 | Informe spam
No está claro. ¿Qué representan esos 4 bytes? ¿Qué hace la función
caracter_to_byte(byte, byte)?



"Aitziber" wrote in message
news:
HOla.
Necesito representar un short en 4 bytes y no se como hacerlo.
La operación contraria la tengo hecha, pero esta no se como hacerla.
Sería lo contrario a lo siguiente:
public static short caracter_to_short(byte valor1, byte valor2, byte
valor3, byte valor4)

{

unsafe

{

short result;

byte* p = (byte*)&result;

//primero mete en la parte baja, por lo tanto le mandamos primero los
ultimos valores

*p = caracter_to_byte(valor3, valor4);

p++;

*p = caracter_to_byte(valor1, valor2);

return result;

}

}


Respuesta Responder a este mensaje
#2 RFOG
05/02/2008 - 18:30 | Informe spam
No te hace falta que sea código no seguro:

unsigned short valor=byte1+(byte2<<8)+(byte3<<16)+(byte4<<24);

O al revés.

Quizás necesites moldear.

Aitziber formulated on martes :
HOla.
Necesito representar un short en 4 bytes y no se como hacerlo.
La operación contraria la tengo hecha, pero esta no se como hacerla.
Sería lo contrario a lo siguiente:
public static short caracter_to_short(byte valor1, byte valor2, byte valor3,
byte valor4)

{

unsafe

{

short result;

byte* p = (byte*)&result;

//primero mete en la parte baja, por lo tanto le mandamos primero los ultimos
valores

*p = caracter_to_byte(valor3, valor4);

p++;

*p = caracter_to_byte(valor1, valor2);

return result;

}

}



Microsoft Visual C++ MVP
==Mi blog sobre programación: http://geeks.ms/blogs/rfog
Mi blog sobre literatura: http://rfog.blogsome.com
Libros, ciencia ficción y programación

El hombre es en el fondo un animal terrible y cruel. Lo conocemos como
ha sido domesticado y educado por lo que conocemos como civilización.
Respuesta Responder a este mensaje
#3 RFOG
05/02/2008 - 18:38 | Informe spam
¡¡¡Hosti, que un short son 2 bytes!!!

Necesitas un DWORD para ello, es decir un Uint32...

RFOG has brought this to us :
No te hace falta que sea código no seguro:

unsigned short valor=byte1+(byte2<<8)+(byte3<<16)+(byte4<<24);

O al revés.

Quizás necesites moldear.

Aitziber formulated on martes :
HOla.
Necesito representar un short en 4 bytes y no se como hacerlo.
La operación contraria la tengo hecha, pero esta no se como hacerla.
Sería lo contrario a lo siguiente:
public static short caracter_to_short(byte valor1, byte valor2, byte
valor3, byte valor4)

{

unsafe

{

short result;

byte* p = (byte*)&result;

//primero mete en la parte baja, por lo tanto le mandamos primero los
ultimos valores

*p = caracter_to_byte(valor3, valor4);

p++;

*p = caracter_to_byte(valor1, valor2);

return result;

}

}





Microsoft Visual C++ MVP
==Mi blog sobre programación: http://geeks.ms/blogs/rfog
Mi blog sobre literatura: http://rfog.blogsome.com
Libros, ciencia ficción y programación

El hombre es en el fondo un animal terrible y cruel. Lo conocemos como
ha sido domesticado y educado por lo que conocemos como civilización.
Respuesta Responder a este mensaje
#4 Aitziber
11/02/2008 - 10:47 | Informe spam
Gracias. Conseguido!!!


"RFOG" escribió en el mensaje
news:
¡¡¡Hosti, que un short son 2 bytes!!!

Necesitas un DWORD para ello, es decir un Uint32...

RFOG has brought this to us :
No te hace falta que sea código no seguro:

unsigned short valor=byte1+(byte2<<8)+(byte3<<16)+(byte4<<24);

O al revés.

Quizás necesites moldear.

Aitziber formulated on martes :
HOla.
Necesito representar un short en 4 bytes y no se como hacerlo.
La operación contraria la tengo hecha, pero esta no se como hacerla.
Sería lo contrario a lo siguiente:
public static short caracter_to_short(byte valor1, byte valor2, byte
valor3, byte valor4)

{

unsafe

{

short result;

byte* p = (byte*)&result;

//primero mete en la parte baja, por lo tanto le mandamos primero los
ultimos valores

*p = caracter_to_byte(valor3, valor4);

p++;

*p = caracter_to_byte(valor1, valor2);

return result;

}

}





Microsoft Visual C++ MVP
==> Mi blog sobre programación: http://geeks.ms/blogs/rfog
Mi blog sobre literatura: http://rfog.blogsome.com
Libros, ciencia ficción y programación
>
El hombre es en el fondo un animal terrible y cruel. Lo conocemos como ha
sido domesticado y educado por lo que conocemos como civilización.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida