DevToys Web Pro iconDevToys Web ProBlogg
Vurder oss:
Prøv nettleserutvidelsen:

Bytt endianness

8 bytes (2 words)
Ord-størrelse

Inndata (hex)

  • Byttet utdata

  • Tekniske detaljer

    Slik fungerer verktøyet for å bytte endianness

    Hva verktøyet gjør

    Verktøyet Bytt endianness reverserer byte-rekkefølgen i en heksadesimal inndata innenfor en konfigurerbar ordstørrelse (2, 4 eller 8 byte). Det er ment for konvertering mellom little-endian- og big-endian-representasjoner av heltall med fast bredde lagret som hex, noe som ofte trengs når man jobber med binære filformater, nettverksprotokoller eller lavnivå-feilsøkingsverktøy som er uenige om byte-rekkefølge.

    Vanlige bruksområder for utviklere

    Reverse engineers normaliserer hex-dumper fra x86 eller ARM (little-endian) og PowerPC eller MIPS (historisk big-endian) slik at de kan sammenligne verdier på tvers av arkitekturer. Nettverksingeniører konverterer heltall i vertens byte-rekkefølge til nettverks-byte-rekkefølge (alltid big-endian) før de bygger dem inn i pakkefangster. Embedded-utviklere feilsøker strukturer lagret i flash ved å justere bytes på nytt til formatet som forventes av analyseverktøyene deres.

    Dataformater, typer eller varianter

    Inndata godtar hex med eller uten `0x`-prefiks og vilkårlig mellomrom. Utdata rendres som mellomromsseparerte heks-bytes i små bokstaver for tydelighet. Ordstørrelser på 2, 4 og 8 byte tilsvarer henholdsvis 16-, 32- og 64-bits heltall. Flere ord byttes uavhengig: med en ordstørrelse på 4 byte blir 12345678 9ABCDEF0 til 78 56 34 12 etterfulgt av F0 DE BC 9A.

    Vanlige fallgruver og kanttilfeller

    Inndata må være et helt antall bytes (partall antall heks-sifre) og et helt antall ord (delelig med den konfigurerte ordstørrelsen i bytes). Uoverensstemmende størrelser gir en feil i stedet for å trunkere i stillhet. Nettverks-byte-rekkefølge er alltid big-endian, mens x86 / ARM bruker little-endian — bytt bytes når du leser eller skriver heltall i wire-format.

    Når du bør bruke dette verktøyet vs. kode

    Bruk nettleserverktøyet for engangskonverteringer mens du leser binære dumper eller feilsøker. I kode bør du foretrekke `DataView` med eksplisitte `littleEndian`-flagg i JavaScript, `byteorder='little'|'big'` i Pythons `int.from_bytes`, `binary.LittleEndian.Uint32` i Go, eller `ntohl` / `htonl` i C — disse er tydeligere på hensikt og unngår hex-rundtripper.