Bytt endianness
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.