std.conv

Typ- und Zahlensystemkonvertierungen sowie Bitmanipulation auf int64. Konvertiert zwischen Dezimal, Hexadezimal, Binär und Oktal, bietet Bit-Extraktion/-Setzung/-Umkehr, Endian-Umwandlung (16/32/64 Bit), Rotation (RotateLeft32, RotateRight32), Vorzeichenerweiterung (SignExtend8/16/32), Alignment-Hilfsfunktionen und formatierte Ganzzahlausgabe mit Tausendertrennzeichen.

Einsatzbereiche: Protokoll-Implementierungen, Kryptografie-Algorithmen, Hardware-nahe Programmierung, Debugging von Binärformaten.

Autor: Andreas Röne
Copyright: 2024-2025 Andreas Röne


Imports

Funktionen

Signatur Sichtbarkeit Beschreibung
CharToHexDigit(c: int64): int64 priv Wandelt ASCII-Zeichen in Hex-Ziffernwert
HexDigitToChar(d: int64): int64 priv Wandelt Hex-Ziffernwert in ASCII-Zeichen
CharToBinDigit(c: int64): int64 priv Wandelt ASCII-Zeichen in Binärziffernwert
BinDigitToChar(d: int64): int64 priv Wandelt Binärziffernwert in ASCII-Zeichen
IntToHex(val: int64, digits: int64): pchar pub Formatiert Ganzzahl als Hex-String
IntToHex8(val: int64): pchar pub Formatiert Ganzzahl als 8-Bit-Hex-String
IntToHex16(val: int64): pchar pub Formatiert Ganzzahl als 16-Bit-Hex-String
IntToHex32(val: int64): pchar pub Formatiert Ganzzahl als 32-Bit-Hex-String
IntToHex64(val: int64): pchar pub Formatiert Ganzzahl als 64-Bit-Hex-String
IntToBin(val: int64, bits: int64): pchar pub Formatiert Ganzzahl als Binär-String
IntToBin8(val: int64): pchar pub Formatiert Ganzzahl als 8-Bit-Binär-String
IntToBin16(val: int64): pchar pub Formatiert Ganzzahl als 16-Bit-Binär-String
IntToBin32(val: int64): pchar pub Formatiert Ganzzahl als 32-Bit-Binär-String
IntToBin64(val: int64): pchar pub Formatiert Ganzzahl als 64-Bit-Binär-String
IntToOct(val: int64, digits: int64): pchar pub Formatiert Ganzzahl als Oktal-String
ParseHex(s: pchar): int64 pub Parst Hex-String zu Ganzzahl
ParseBin(s: pchar): int64 pub Parst Binär-String zu Ganzzahl
ParseOct(s: pchar): int64 pub Parst Oktal-String zu Ganzzahl
GetBit(val: int64, bit_pos: int64): bool pub Liest einzelnes Bit an Position
SetBit(val: int64, bit_pos: int64): int64 pub Setzt Bit an angegebener Position
ClearBit(val: int64, bit_pos: int64): int64 pub Löscht Bit an angegebener Position
ToggleBit(val: int64, bit_pos: int64): int64 pub Invertiert Bit an angegebener Position
ExtractBits(val: int64, start: int64, count: int64): int64 pub Extrahiert Bitfeld aus Ganzzahlwert
InsertBits(val: int64, bits: int64, start: int64, count: int64): int64 pub Fügt Bitfeld in Ganzzahlwert ein
CountLeadingZeros(val: int64): int64 pub Zählt führende Nullbits im Wert
CountTrailingZeros(val: int64): int64 pub Zählt nachfolgende Nullbits im Wert
SwapEndian16(val: int64): int64 pub Tauscht Byte-Reihenfolge bei 16 Bit
SwapEndian32(val: int64): int64 pub Tauscht Byte-Reihenfolge bei 32 Bit
SwapEndian64(val: int64): int64 pub Tauscht Byte-Reihenfolge bei 64 Bit
GetByte(val: int64, byte_pos: int64): int64 pub Liest Byte an angegebener Position
SetByte(val: int64, byte_pos: int64, byte_val: int64): int64 pub Schreibt Byte an angegebener Position
RotateLeft32(val: int64, n: int64): int64 pub Rotiert 32-Bit-Wert um n Bits links
RotateRight32(val: int64, n: int64): int64 pub Rotiert 32-Bit-Wert um n Bits rechts
SignExtend8(val: int64): int64 pub Vorzeichenerweitert 8-Bit-Wert auf 64 Bit
SignExtend16(val: int64): int64 pub Vorzeichenerweitert 16-Bit-Wert auf 64 Bit
SignExtend32(val: int64): int64 pub Vorzeichenerweitert 32-Bit-Wert auf 64 Bit
ZeroExtend8(val: int64): int64 pub Nullerweitert 8-Bit-Wert auf 64 Bit
ZeroExtend16(val: int64): int64 pub Nullerweitert 16-Bit-Wert auf 64 Bit
ZeroExtend32(val: int64): int64 pub Nullerweitert 32-Bit-Wert auf 64 Bit
ClampUint8(val: int64): int64 pub Begrenzt Wert auf 8-Bit-Bereich 0–255
ClampUint16(val: int64): int64 pub Begrenzt Wert auf 16-Bit-Bereich
ClampUint32(val: int64): int64 pub Begrenzt Wert auf 32-Bit-Bereich
AlignDown(addr: int64, alignment: int64): int64 pub Rundet Adresse auf Alignment-Grenze ab
AlignUp(addr: int64, alignment: int64): int64 pub Rundet Adresse auf Alignment-Grenze auf
IsAligned(addr: int64, alignment: int64): bool pub Prüft ob Adresse ausgerichtet ist
IntToStrWithSeparator(n: int64, sep: int64): pchar pub Formatiert Zahl mit benutzerdefiniertem Trennzeichen
IntToStrWithUnderscore(n: int64): pchar pub Formatiert Zahl mit Unterstrich-Trennzeichen
IntToStrWithComma(n: int64): pchar pub Formatiert Zahl mit Komma-Tausendertrennzeichen