![]() |
BinToInt Binär -> Integer
Hallo,
folgende Funktion ist von Christian Seehase!
Delphi-Quellcode:
Grüsse, Daniel :hi:
function BinToInt(const AsValue : string) : integer;
const // In einer Binärzahl erlaubte Ziffern _aBinDigits = ['0','1']; var iPowerOfTwo : integer; // Enthält den Wert der 2er Potenz der gerade bearbeiteten Stelle i : integer; // Schleifenzähler begin Result := 0; // Ergebnis initialisieren iPowerOfTwo := 1; // mit 2 hoch 0 anfangen // Auf gültige Länge prüfen if (length(AsValue) < 1) or (length(AsValue) > 32) then begin // Sonst Exception erzeugen raise Exception.Create('Die Zahl muss zwischen 1 und 32 Stellen haben.'); end; // mit der niederwertigsten Stelle anfangen und hocharbeiten for i := length(AsValue) downto 1 do begin // Auf gültige Ziffer prüfen if not (AsValue[i] in _aBinDigits) then begin // falls nicht Exception erzeugen raise Exception.Create('Es dürfen nur die Ziffern 0 und 1 vorkommen.'); end; // Wenn die Stelle eine 1 ist if AsValue[i] = '1' then begin // dann das entsprechende Bit setzen Result := Result or iPowerOfTwo; end; // Wert für nächste Stelle setzen iPowerOfTwo := iPowerOfTwo shl 1; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz