Datatype Conversie Tool | IEEE754 Floating-Point/Hexadecimaal/Decimaal Conversie/Multi-Bytevolgorde (Big Endian/Little Endian/Big Endian-Byte Swap/Little Endian-Byte Swap) Ondersteuning/Real-time Conversie
Professionele datatype conversie tool die wederzijdse conversie tussen IEEE754 floating-point en hexadecimaal/decimaal ondersteunt, alle integer en floating-point datatypen dekt (UINT16/INT16/UINT32/INT32/FLOAT32/UINT64/INT64/FLOAT64), meerdere bytevolgordes ondersteunt (Big Endian (MSB eerst)/Little Endian (LSB eerst)/Big Endian-Byte Swap/Little Endian-Byte Swap), en real-time conversieresultaten toont.
Conversieresultaten
| Datatype | ABCD (Big Endian) | DCBA (Little Endian) | BADC | CDAB |
|---|---|---|---|---|
UINT16 16-bit unsigned integer | - | - | ||
INT16 16-bit signed integer | - | - | ||
UINT32 32-bit unsigned integer | - | - | - | - |
INT32 32-bit signed integer | - | - | - | - |
FLOAT32 32-bit floating-point | - | - | - | - |
UINT64 64-bit unsigned integer | - | - | - | - |
INT64 64-bit signed integer | - | - | - | - |
FLOAT64 64-bit floating-point | - | - | - | - |
Gebruikershandleiding
Functieoverzicht
De Datatype Conversie Tool is gespecialiseerd in de conversie tussen verschillende dataformaten, en ondersteunt wederzijdse conversie tussen hexadecimaal en decimaal. Het omvat diverse integer- en floating-point datatypen van 16 tot 64 bits. Integers worden weergegeven met Two's Complement; floating-point getallen gebruiken de IEEE-754 codering (single-precision 32-bit/double-precision 64-bit), wat een intuïtief inzicht geeft in de invloed van bytevolgorde op de resultaten.
Belangrijkste functies:
- Formaatconversie: Ondersteunt wederzijdse conversie tussen hexadecimaal en decimaal
- Meerdere datatypen: Ondersteunt 8 veelgebruikte datatypen (UINT16/INT16/UINT32/INT32/FLOAT32/UINT64/INT64/FLOAT64)
- Bytevolgorde ondersteuning: Ondersteunt 4 bytevolgordes (ABCD/DCBA/BADC/CDAB) om te voldoen aan de eisen van verschillende apparaten en register-woordvolgordes
- Real-time conversie: Toont direct de conversieresultaten voor alle typen na het invoeren van de data
Hoe te gebruiken
- 1. Selecteer het invoerformaat: Decimaal of Hexadecimaal
- 2. Voer de waarde in het invoerveld in
- 3. Bekijk de conversieresultaten in de onderstaande tabel
- 4. Conversieresultaten die buiten het bereik vallen, worden weergegeven als '-'
Uitleg Invoerformaat
- Decimale invoer: Voer direct getallen in, zoals: 123, -456, 3.14
- Hexadecimale invoer: Voer hexadecimale karakters in, zoals: 7B, FF00, A1B2C3D4
- Hexadecimale auto-formattering: Vult automatisch aan tot een even aantal tekens en voegt spaties toe ter scheiding
Uitleg Datatypen
Integer typen:UINT16/INT16 zijn 2 bytes, UINT32/INT32 zijn 4 bytes, UINT64/INT64 zijn 8 bytes; signed integers gebruiken Two's Complement representatie, waarbij de meest significante bit de tekenbit is. Negatieve getallen worden verkregen door het complement van de absolute waarde te nemen (bitwise NOT + 1). Bij weergave wordt tekenuitbreiding toegepast op basis van de doel-bitbreedte.
Floating-point typen:FLOAT32 is 4-byte single-precision (1 tekenbit + 8 exponentbits + 23 mantissebits, exponent bias 127), FLOAT64 is 8-byte double-precision (1 tekenbit + 11 exponentbits + 52 mantissebits, exponent bias 1023), beide conform de IEEE-754 standaard. Ondersteunt speciale waarden zoals ±0, ±∞ en NaN (Not a Number). Subnormale getallen worden weergegeven met een zeer kleine exponent.
Bereikbeperking: Waarden buiten het bereik van het datatype worden weergegeven als '-'
Uitleg Bytevolgorde
- ABCD: Big Endian, meest significante byte eerst (zoals bij sommige PLC/industriële apparatuur)
- DCBA: Little Endian, minst significante byte eerst (zoals bij de meeste x86-architecturen)
- BADC: Byte Swap (wisselt AB↔BA, CD↔DC per 16-bit stap), vaak gebruikt bij 32-bit data waarbij twee-byte paren worden gewisseld
- CDAB: Byte Swap (wisselt voorste en achterste twee bytes binnen een 32-bit groep), compatibel met de woordvolgorde van sommige Modbus-registers
Let op: Byte Endianness is een ander concept dan Word Order. Voor 16-bit data zijn alleen ABCD en DCBA permutaties zinvol. Voor 64-bit data wordt aanbevolen de ABCDEFGH acht-byte representatie te raadplegen om verwarring te voorkomen.
Kennis over Dataconversie
Wat is datatypeconversie?
Datatypeconversie is het proces van het omzetten van dezelfde numerieke waarde tussen verschillende representatieformaten, inclusief conversies tussen verschillende getalstelsels (decimaal/hexadecimaal) en datatypen (integer/floating-point). Dit wordt vaak aangetroffen bij het parseren en framen van registerwaarden in Modbus/PLC/embedded scenario's.
IEEE-754 Floating-Point Formaat (Single/Double Precision)
Single precision (32-bit) = 1 tekenbit + 8 exponentbits (bias 127) + 23 mantissebits; Double precision (64-bit) = 1 tekenbit + 11 exponentbits (bias 1023) + 52 mantissebits. Ondersteunt ±0, ±∞, NaN; wanneer de exponent volledig 0 is en de mantisse niet-nul, is het een subnormaal getal, gebruikt om zeer kleine getallen nabij nul weer te geven.
Two's Complement en Signed Integers
Het complement wordt verkregen door de absolute waarde bitwise te inverteren en er 1 bij op te tellen, waarbij de meest significante bit de tekenbit is. Bij het parseren van HEX naar INT-typen is tekenuitbreiding vereist op basis van de bitbreedte. Wanneer de meest significante bit 1 is, duidt dit op een negatief getal dat volgens de complementregels moet worden hersteld.
Bytevolgorde (Endianness) en Registerwoordvolgorde (Word Order)
Bytevolgorde bepaalt de rangschikking van bytes in het geheugen (ABCD/DCBA), terwijl registerwoordvolgorde de volgorde van de hoge en lage woorden van 16-bit registers bepaalt (zoals BADC/CDAB). Beide beïnvloeden vaak de weergave en het parsen van 32/64-bit data en moeten consistent zijn met de apparaatdocumentatie.
64-bit Integers en JavaScript Veilige Integers
Het Number-type van de browser is IEEE-754 double precision, met een veilig integerbereik van ±(2^53-1). Deze tool gebruikt BigInt voor conversie en weergave in 64-bit scenario's. Wanneer een waarde het bereik van het doeltype overschrijdt of er een precisierisico is, wordt dit aangegeven met '-'.
Normalisatie van HEX-invoer
HEX-invoer wordt automatisch opgeschoond door niet-hexadecimale tekens te verwijderen, om te zetten naar hoofdletters en indien nodig op te vullen met een voorloopnul om een even aantal tekens te garanderen. Voor de leesbaarheid wordt het weergegeven in groepen van twee tekens, gescheiden door spaties.
Regels voor Decimale Getallen en Integer-typen
Wanneer een decimale invoer een decimaalteken bevat en het doeltype een integer is, wordt '-' weergegeven. Alleen wanneer het doel FLOAT32/FLOAT64 is, wordt een floating-point conversie uitgevoerd.
Veelvoorkomende Misvattingen: Big/Little Endian en Bitvolgorde, NaN/Infinity Weergave
Big/little endian beïnvloedt alleen de bytevolgorde, niet de bitvolgorde binnen een byte. NaN heeft meerdere coderingsvormen maar wordt uniform weergegeven als NaN. ±0 wordt onderscheiden in IEEE-754, maar wordt bij numerieke vergelijkingen meestal als gelijkwaardig beschouwd.
Toepassingsscenario's
- Modbus communicatie dataformaat conversie
- PLC datatype debugging
- Configuratie van industriële apparaatparameters
- Analyse van communicatieprotocol
- Ontwikkeling van data-acquisitiesystemen
- Berekening van apparaatregisterwaarden
- Conversie van floating-point naar integer
- Aanpassing van dataformaten tussen meerdere apparaten