DevToys Web Pro iconDevToys Web ProBlog
Beoordeel ons:
Probeer de browserextensie:

Endianness omwisselen

8 bytes (2 words)
Woordgrootte

Invoer (hex)

  • Uitvoer met omgewisselde bytes

  • Technische details

    Hoe de Endianness-omwisseltool werkt

    Wat de tool doet

    De Endianness-omwisseltool keert de bytevolgorde van een hexadecimale invoer om binnen een configureerbare woordgrootte (2, 4 of 8 bytes). Hij is bedoeld voor het omzetten tussen little-endian- en big-endian-representaties van integers met vaste breedte die als hex zijn opgeslagen, wat vaak nodig is bij het werken met binaire bestandsformaten, netwerkprotocollen of low-level debugtools die het oneens zijn over bytevolgorde.

    Veelvoorkomende use-cases voor ontwikkelaars

    Reverse engineers normaliseren hexdumps van x86 of ARM (little-endian) en PowerPC of MIPS (historisch big-endian), zodat ze waarden over architecturen heen kunnen vergelijken. Netwerkingenieurs zetten integers in host-byte-order om naar network byte order (altijd big-endian) voordat ze die in packet captures opnemen. Embedded developers debuggen structuren die in flash zijn opgeslagen door bytes opnieuw uit te lijnen naar het formaat dat hun analysetooling verwacht.

    Gegevensformaten, typen of varianten

    De invoer accepteert hex met of zonder `0x`-prefix en willekeurige witruimte. De uitvoer wordt voor de duidelijkheid weergegeven als door spaties gescheiden hex-bytes in kleine letters. Woordgroottes van 2, 4 en 8 bytes komen overeen met respectievelijk 16-, 32- en 64-bit integers. Meerdere woorden worden onafhankelijk omgewisseld: met een woordgrootte van 4 bytes wordt 12345678 9ABCDEF0 78 56 34 12 gevolgd door F0 DE BC 9A.

    Veelvoorkomende valkuilen en edge-cases

    De invoer moet een geheel aantal bytes zijn (even aantal hex-cijfers) en een geheel aantal woorden (deelbaar door de ingestelde woordgrootte in bytes). Niet-overeenkomende groottes geven een foutmelding in plaats van stilzwijgend af te kappen. Network byte order is altijd big-endian, terwijl x86 / ARM little-endian gebruiken — wissel de bytes om bij het lezen of schrijven van wire-format integers.

    Wanneer je deze tool gebruikt vs code

    Gebruik de browsertool voor eenmalige conversies tijdens het lezen van binaire dumps of debuggen. In code kun je beter `DataView` gebruiken met expliciete `littleEndian`-flags in JavaScript, `byteorder='little'|'big'` in Python's `int.from_bytes`, `binary.LittleEndian.Uint32` in Go, of `ntohl` / `htonl` in C — die maken de intentie duidelijker en vermijden hex round-trips.