Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#5

Re: Bitmuster eines Single Berechnen

  Alt 15. Jan 2009, 13:01
Statt Integer lieber LongInt oder LongWord verwenden (Single ist 4 Byte ... Integer ist es nicht unbedingt)

Delphi-Quellcode:
Function BinFtoString(f: Single): String;
Var i: Integer;
  b: LongInt absolute f;

Begin
  SetLength(Result, 32);
  For i := 32 downto 1 do Begin
    Result[i] := Char((b and 1) + Ord('0'));
    b := b shr 1;
  End;
End;

Function BinFtoString(f: Single): String;
Var i: Integer;
  b: PLongInt;

Begin
  b := @f;
  SetLength(Result, 32);
  For i := 32 downto 1 do Begin
    Result[i] := Char((b^ and 1) + Ord('0'));
    b^ := b^ shr 1;
  End;
End;
Angehängte Dateien
Dateityp: pas floatconvert_203.pas (17,3 KB, 5x aufgerufen)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat