FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
IntToBytes y viceversa
Que tal gente, queria saber como poder pasar un Integer (4 bytes) a un arreglo de bytes, es decir, a groso modo en delphi tendria que ser hipoteticamente asi
El ejemplo es para ilustrar mejor el problema, osea quiza tmb necesite, o no, algun flag para el signo u otras cosas. A lo que voy es que no necesariamente quiero que quede asi el codigo, la idea es la conversion. Saludos |
#2
|
||||
|
||||
Hola.
Para pasar un entero a binario: Luego podés recorrer la cadena resultante para asignar los valores a tu arreglo. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
|||
|
|||
Gracias ecfisa, pero no hay una manera mas rapida que separar el binario en grupos de 8 ?
|
#4
|
|||
|
|||
Resuelto.. cada numero corresponde a 256^Posicion * Numero[Posicion]
|
#5
|
|||
|
|||
function BytesToInt(Num: intBytes): Integer;
begin Result:= 256^3 * Num[3] + 256^2 * Num[2] + 256 * Num[1] + Num[0]; end; function IntToBytes( X: Integer ): intBytes; begin Result[0]:= X mod 256; Result[1]:= X div 256; Result[2]:= X div 256^2; Result[3]:= X div 256^3; end; |
#6
|
||||
|
||||
Hola kdemia.
No entiendo muy bién tu última pregunta, pero si quisieras hacer algo mas "a medida" al código de tu primer consulta: Que sería similar a llamar a IntToBin(n, 4). Te estarías ahorrando el pasaje al arreglo, eso sí... Saludos. Edito: Me llamaron mientras estaba editando y no ví tus 2 nuevos mensajes. Pero veo que ya encontraste otra solución, me alegra mucho
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 24-11-2011 a las 20:42:27. |
#7
|
||||
|
||||
Por favor:
|
#8
|
||||
|
||||
Si entiendo bien la pregunta, se podría hacer algo como esto:
Lo que hacemos es tener un puntero a un arreglo de x bytes (probablemente 4, pero nunca hay que fiarse de la longitud de un Integer, porque el tamaño puede variar), y una variable Integer propiamente dicha. Después asignamos al puntero la dirección de memoria del entero y listo. Espero sirva. Saludos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Conversión de Lat/Lng a UTM y viceversa | sur-se | Varios | 7 | 25-11-2016 18:29:39 |
Cambiar TimetoStr y viceversa | gcc32 | Varios | 20 | 21-11-2010 21:17:44 |
Convertir IP al nombre relacionado y viceversa | arima | Internet | 16 | 16-08-2006 17:34:52 |
Pasar Delphi 5 a 6,7 y viceversa | Ivanzinho | Varios | 2 | 29-11-2005 10:36:14 |
conversion de double a string y viceversa | mainau | Varios | 2 | 03-08-2004 21:11:30 |
|