Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > JAVA
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-10-2008
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 23
Enan0 Va por buen camino
gracias cHacKall. porque la verdad que estoy haciendo mis primeras armas en java. y justamente transcribiendo unas lineas de delphi. bueno hay muchos fundamentos de JAVA que se encuentras ausentes en mi.

gracias de nuevo y te comento como me resulto todo
saludos
Responder Con Cita
  #2  
Antiguo 19-10-2008
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 23
Enan0 Va por buen camino
Sigo con el mismo error... por mas que utilize el Typecast.

Cita:
possible loss of precision
found : int
required: byte
return (byte)(Value<<2) | (Value >> 8) ;
^
1 error
este es el codigo completo


Código Delphi [-]
public class rotate {

     private static  byte  ROL2(byte Value)
      {
           return (byte)(Value<<2) | (Value >> 8) ;
      }

    public rotate() {
    byte n;
    Integer i;
    n=83;
    n=ROL2(n);
    System.out.println(n);
    for (i=0;i<7;i++)        
        n=ROL2(n);
        System.out.println(n);
    }
    
    
}

uso el for para verificar que no haya perdida de datos. debido a que el programa original asi lo hace con el ROL del assembler. y se puede decir que siempre da el mismo resultado.. debido a que solo rota los 8 bits.

Utilizando el Integer.rotatetoleft() no funciona bien ya que no completa los 8 bits es decir No rellena con Ceros.
Responder Con Cita
  #3  
Antiguo 19-10-2008
Avatar de Enan0
Enan0 Enan0 is offline
Miembro
 
Registrado: may 2004
Ubicación: Argentina
Posts: 565
Poder: 23
Enan0 Va por buen camino
Bueno ahi pude hacer que compile..
Simplemente haciendo lo que vos dijiste... usando el TypeCast.

me habia comido un par de ( ... )

El tema es el siguiente.

el Rol 83,2 deberia dar 77 y da 76
eso se debe a no completa los 8 Bits.
Si lo hacemos manual seria!

01010011 = 83
01001101 = 77

y como te inmaginaras apartir de ahi todos los calculos dan mal.
Responder Con Cita
  #4  
Antiguo 20-10-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 22
cHackAll Va por buen camino
Código:
  private static byte ROL2(byte Value)
  {
   return (byte)((Value<<2)|(Value>>6));
  }
Saludos
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Boteable en assembler fide API de Windows 5 31-12-2006 20:05:31
Assembler desde delphi lookmydoom Varios 3 30-06-2006 21:56:20
assembler y el señor delphi fcran Varios 2 26-06-2006 11:32:14
Fuentes assembler o .asm Leomedellin Varios 7 19-04-2005 07:09:33
assembler en delphi fcran Varios 4 23-05-2003 07:35:44


La franja horaria es GMT +2. Ahora son las 11:18:57.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi