Ver Mensaje Individual
  #15  
Antiguo 14-09-2011
Avatar de mightydragonlor
[mightydragonlor] mightydragonlor is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Medellín-Colombia
Posts: 587
Reputación: 20
mightydragonlor Va por buen camino
Muchas gracias a todos, les cuento que alfín pude convertir el decimal gigante a hexadecimal, les dejo el código:

Código Delphi [-]
{Convierte un TBCD en un hexadecimal}
function BCDToHex(BCD: TBCD): string;
const
  B16: array[0..15] of Char = ('0','1','2','3','4','5','6','7','8','9',
        'A','B','C','D','E','F');
var
  BcdEx,DivBcd: TBCD;
  ModInt,SepDec: Integer;
begin
  Result:= '';
  while (Bcd > 0) do
  begin
   BCDDivide(Bcd,16,BcdEx);
   SepDec:=Pos(DecimalSeparator,BCDToStr(BcdEx))-1;
   If SepDec > 0 then begin
     DivBcd:=StrToBCD(Copy(BCDToStr(BcdEx),0,SepDec));
   end else begin
     DivBcd:=BcdEx;
   End;
   ModInt:=StrToInt(BCDToStr(Bcd - (16 * DivBcd)));
   Result:= B16[ModInt] + Result;
   BCD:=DivBCD;
  end;
end;
Y adicionalmente les dejo el proyecto de ejemplo en Lazarus, está comprimido en 7z así tenga extensión Zip, saludos y muchas gracias.
Archivos Adjuntos
Tipo de Archivo: zip HEXBCDSTR.Zip (59,9 KB, 9 visitas)
__________________
mas confundido que Garavito el día del Niño.
Responder Con Cita