Verktøy for datakonvertering | IEEE754 flyttall/heksadesimal/desimal konvertering/støtte for flere byte-rekkefølger (big-endian/little-endian/big-endian-byte-swap/little-endian-byte-swap)/sanntidskonvertering

Profesjonelt verktøy for datakonvertering som støtter konvertering mellom IEEE754 flyttall og heksadesimal/desimal, dekker alle heltalls- og flyttallstyper (UINT16/INT16/UINT32/INT32/FLOAT32/UINT64/INT64/FLOAT64), støtter flere byte-rekkefølger (big-endian/little-endian/big-endian-byte-swap/little-endian-byte-swap), med sanntidsvisning av konverteringsresultater.

Inndataformat:

Konverteringsresultater

DatatypeABCD (Big Endian)DCBA (Little Endian)BADCCDAB
UINT16
16-bit usignert heltall
-
-
INT16
16-bit signert heltall
-
-
UINT32
32-bit usignert heltall
-
-
-
-
INT32
32-bit signert heltall
-
-
-
-
FLOAT32
32-bit flyttall
-
-
-
-
UINT64
64-bit usignert heltall
-
-
-
-
INT64
64-bit signert heltall
-
-
-
-
FLOAT64
64-bit flyttall
-
-
-
-

Brukerhåndbok

Funksjonsoversikt

Verktøyet for datakonvertering er spesialisert for konvertering mellom ulike dataformater, med støtte for konvertering mellom heksadesimal og desimal. Det dekker ulike heltalls- og flyttallstyper fra 16-bit til 64-bit. Heltall representeres med toerkomplement; flyttall bruker IEEE-754-koding (enkeltpresisjon 32-bit/dobbeltpresisjon 64-bit), slik at man kan observere hvordan byte-rekkefølgen påvirker resultatet.

Hovedfunksjoner:

  • Formatkonvertering: Støtter konvertering mellom heksadesimal og desimal
  • Flere datatyper: Støtter 8 vanlige datatyper (UINT16/INT16/UINT32/INT32/FLOAT32/UINT64/INT64/FLOAT64)
  • Støtte for byte-rekkefølge: Støtter 4 typer byte-rekkefølger (ABCD/DCBA/BADC/CDAB) for å tilpasse seg ulike enheter og register-ordre krav
  • Sanntidskonvertering: Viser umiddelbart konverteringsresultater for alle typer etter at data er lagt inn

Hvordan bruke verktøyet

  • 1. Velg inndataformat: Desimal eller heksadesimal
  • 2. Skriv inn verdien i inndatafeltet
  • 3. Se konverteringsresultatene i tabellen nedenfor
  • 4. Konverteringsresultater som er utenfor rekkevidde vil vises som '-'

Forklaring av inndataformat

  • Desimal inndata: Skriv inn tall direkte, som f.eks.: 123, -456, 3.14
  • Heksadesimal inndata: Skriv inn heksadesimale tegn, som f.eks.: 7B, FF00, A1B2C3D4
  • Automatisk formatering av heksadesimal: Fyller automatisk ut til et jevnt antall sifre og legger til mellomrom for å skille dem

Forklaring av datatyper

Heltallstyper:UINT16/INT16 er 2 bytes, UINT32/INT32 er 4 bytes, UINT64/INT64 er 8 bytes; signerte heltall bruker toerkomplement, der det mest signifikante bitet er fortegnsbitet. Negative tall oppnås ved å ta komplementet av den absolutte verdien (bitvis inversjon + 1). Ved visning utføres fortegnsutvidelse i henhold til målbredden.

Flyttallstyper:FLOAT32 er 4-byte enkeltpresisjon (1 fortegnsbit + 8 eksponentbiter + 23 mantissebiter, eksponent-offset 127), FLOAT64 er 8-byte dobbeltpresisjon (1 fortegnsbit + 11 eksponentbiter + 52 mantissebiter, eksponent-offset 1023), begge i henhold til IEEE-754-standarden. Støtter spesialverdier som ±0, ±∞ og NaN (Not a Number). Subnormale tall representeres med en veldig liten eksponent.

Områdebegrensning: Verdier utenfor datatypens område vil vises som '-'

Forklaring av byte-rekkefølge

  • ABCD: Big Endian, høy byte først (f.eks. i noen PLS-er/industrielt utstyr)
  • DCBA: Little Endian, lav byte først (f.eks. i de fleste x86-arkitekturer)
  • BADC: Byte Swap (bytter AB↔BA, CD↔DC i 16-bits trinn), vanlig for 32-bits data der to-byte par byttes
  • CDAB: Byte Swap (bytter de to første og to siste bytene i 32-bits grupper), kompatibel med noen Modbus-register-ordre

Merk: Byte Endianness og Word Order er forskjellige konsepter. For 16-bits data er bare ABCD og DCBA-rekkefølger meningsfulle. For 64-bits data anbefales det å referere til en ABCDEFGH åtte-byte illustrasjon for å unngå forvirring.

Kunnskap om datakonvertering

Hva er datakonvertering?

Datakonvertering er prosessen med å konvertere samme numeriske verdi mellom forskjellige representasjonsformater, inkludert forskjellige tallsystemer (desimal/heksadesimal) og datatyper (heltall/flyttall). Dette er vanlig i Modbus/PLS/innebygde systemer for parsing og oppretting av registerverdier.

IEEE-754 flyttallsformat (enkelt-/dobbeltpresisjon)

Enkeltpresisjon (32-bit) = 1 fortegnsbit + 8 eksponentbiter (offset 127) + 23 mantissebiter; dobbeltpresisjon (64-bit) = 1 fortegnsbit + 11 eksponentbiter (offset 1023) + 52 mantissebiter. Støtter ±0, ±∞, NaN; når eksponenten er alle 0-er og mantissen ikke er 0, er det et subnormalt tall, brukt til å representere svært små tall nær 0.

Toerkomplement og signerte heltall

Komplementet oppnås ved bitvis inversjon av den absolutte verdien, pluss 1, der det mest signifikante bitet er fortegnsbitet. Ved parsing av HEX til INT-type, må fortegnsutvidelse utføres i henhold til bitbredden; når det mest signifikante bitet er 1, indikerer det et negativt tall, som må gjenopprettes i henhold til toerkomplement-reglene.

Byte Endianness og Word Order

Byte-rekkefølgen styrer rekkefølgen av bytes i minnet (ABCD/DCBA), mens register-ordre styrer rekkefølgen av høye og lave 16-bits ord (f.eks. BADC/CDAB). Begge påvirker ofte visningen og parsingen av 32/64-bits data og bør være i samsvar med enhetens dokumentasjon.

64-bits heltall og JavaScripts sikre heltall

Nettleserens Number er IEEE-754 dobbeltpresisjon, med et sikkert heltallsområde på ±(2^53-1). Dette verktøyet bruker BigInt for konvertering og visning i 64-bits scenarioer. Når en verdi overskrider måldatatypens område eller det er en presisjonsrisiko, vises '-'.

Normalisering av HEX-inndata

HEX-inndata fjerner automatisk ikke-heksadesimale tegn, konverterer til store bokstaver og legger til en ledende 0 om nødvendig for å sikre et jevnt antall sifre. Ved visning grupperes det med mellomrom for annenhver tegn for å forbedre lesbarheten.

Regler for flyttall og heltallstyper

Når desimal inndata inneholder et desimaltegn og målet er en heltallstype, vises '-'. Flyttallskonvertering utføres bare når målet er FLOAT32/FLOAT64.

Vanlige misforståelser: Big/Little Endian og bit-rekkefølge, visning av NaN/Infinity

Big/Little Endian påvirker bare byte-rekkefølgen, ikke bit-rekkefølgen innenfor en byte. NaN har flere kodingsformer, men vises som NaN. ±0 er differensiert i IEEE-754, men er vanligvis ekvivalente i numeriske sammenligninger.

Bruksområder

  • Konvertering av dataformat i Modbus-kommunikasjon
  • Feilsøking av datatyper i PLS
  • Konfigurasjon av parametere for industrielt utstyr
  • Analyse av kommunikasjonsprotokoller
  • Utvikling av datainnsamlingssystemer
  • Beregning av registerverdier for utstyr
  • Konvertering mellom flyttall og heltall
  • Tilpasning av dataformater mellom flere enheter
Verktøy for datakonvertering | IEEE754 flyttall/heksadesimal/desimal konvertering/støtte for flere byte-rekkefølger (big-endian/little-endian/big-endian-byte-swap/little-endian-byte-swap)/sanntidskonvertering