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
|
|||
|
|||
Operaciones con bits
Buenas, Estoy traspasando un programa de Java a Delphi y me encuentro en un punto que no entiendo lo que hace. Alguien podría explicarmelo por favor ?
Las lineas en Java son las siguientes: packet[i++] = (byte) (lenField >>> 7 & 0x7f | 0x80); packet[i++] = (byte) (lenField & 0x7f); packet[i++] = (byte) (dataLen >>> 7 & 0x7f | 0x80); packet[i++] = ( byte) (partPos >>> 8 & 0xff); packet[i++] = (byte) (partPos & 0xff); el problema esta, evidentemente, en lo que hacen los operadores >>>, & y | Espero vuestras noticias y gracias Última edición por Casimiro Notevi fecha: 16-06-2010 a las 13:21:50. |
#2
|
|||
|
|||
Hola,
Código:
packet[i++] = (byte) (lenField >>> 7 & 0x7f | 0x80); el operador >>> es bitwise, o sea, desplazamiento del numero en bits hacia la izquierda, lo que es equivalente a dividir por dos al ser binario. El & es AND y el | es OR. |
#3
|
|||
|
|||
Más o menos sería esto:
Código:
packet[i]=((lenField shr 7) And $7f) Or $80; Inc(i); packet[i]=lenfield And $7f; Inc(i); packet[i]=((dataLen shr 7) And $7f) Or $80; Inc(i); packet[i]=(partPos shr 8) And $ff; Inc(i); packet[i]=partPos And $ff; Inc(i); << equivale a shl, pero conservando el bit de signo >> equivale a shr, pero conservando el bit de signo >>> es un shr, pero para datos sin signo & es un And | es un Or |
#4
|
|||
|
|||
Como hacer esto ?
Buenas de nuevo, hoy estoy de dudas. Resulta que estoy convirtiendo un codigo de JAVA a Delphi y me encuentro con una duda, no se cual es el equivalente en delphi de:
Código PHP:
Código PHP:
No se si alguien podrá ayudarme con esto. Gracias de todas maneras |
#5
|
|||
|
|||
Gracias por la respuesta, esto ya habia podido leerlo en Internet, pero mi problema es que no se como convertirlo a Delphi, es decir, cual sería el codigo equivalente en Delphi de esto:
Código PHP:
Gracias de nuevo |
#6
|
|||
|
|||
Ya te hemos respondido en el apartado Java, por lo tanto no dupliques los posts. Y no estaría mal que pusieras un título claro en el post...
|
#7
|
|||
|
|||
MCS, ya se que me habeis respondido, pero a una pregunta diferente. En este caso es como convertir ese codigo a Delphi y por eso lo he puesto aqui y no en el apartado de JAVA
Gracias |
#8
|
|||
|
|||
Cita:
De todas formas, podrías leerte un poco más detalladamente el hilo anterior (son 3 respuestas en total), y quizá así podrás ver que este bloque de código lo tienes convertido de Java a Delphi... |
#9
|
|||
|
|||
Solucionado
MCS, perdona, ya veo que me dabas una respuesta del equivalente en Delphi, perdona pero no llevo un buen día.
Ya estoy trabajando con la ayuda que me has dado. Gracias. |
#10
|
|||
|
|||
Cita:
Saludos, Marc |
#11
|
|||
|
|||
Solucionado
MCS gracias y perdona por la confusion, si que era una respuesta, ya esta solucionado gracias a esa ayuda.
Un saludo |
#12
|
||||
|
||||
Por favor, JordiP, no repitas preguntas en distintos subforos, y titula correctamente, porque "como hacer esto" y "traducción please" no sirve para nadie que luego esté buscando algo sobre el tema, debes poner un título algo más descriptivo.
Por favor, lee nuestra guía de estilo. Voy a unir ambos hilos en uno solo. Muchas gracias por tu colaboración. |
#13
|
|||
|
|||
OK lo hare, perdonad
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Traduccion | lmpadron | C++ Builder | 3 | 05-05-2010 15:30:31 |
Traducción de C a Delphi | madiazg | Varios | 4 | 02-08-2008 15:00:24 |
Traduccion de Componente | Neeruu | Varios | 4 | 05-03-2008 00:11:21 |
Traducción de tu programa. | REHome | .NET | 4 | 11-04-2007 00:19:19 |
|