Konvertering mellem talsystemer i praksis
I computerteknologi og programmering arbejder man ofte med forskellige talsystemer for at repræsentere data. Hvor det decimale talsystem (titalssystemet) er standarden i hverdagen, anvender computere det binære talsystem (totalssystemet) på det laveste niveau. For at gøre binære data mere læsbare for mennesker, benyttes ofte det oktale talsystem (ottetalssystemet) og det heksadecimale talsystem (sekstentalssystemet).
Dette værktøj gør det muligt at konvertere tal direkte mellem disse fire talsystemer. Når du arbejder i taltilstand, vil en ændring i ét af felterne øjeblikkeligt opdatere de tre andre. Derudover understøtter værktøjet tekstkonvertering, hvor tekst kan omdannes til rå byte-værdier i et valgt talsystem, eller byte-værdier kan afkodes tilbage til almindelig tekst.
Understøttede inputformater og syntaks
For at sikre en fleksibel arbejdsgang accepterer værktøjet flere forskellige formateringer og præfikser, som ofte optræder i kildekode og tekniske specifikationer.
Taltilstand (Number mode)
Når du indtaster tal, kan du benytte følgende formater i de respektive felter:
- Binær: Et binært tal, som kun må indeholde cifrene
0og1. Værktøjet accepterer præfikset0bsamt understregninger (_) og mellemrum som separatorer. - Oktal: Et oktalt tal, der kun indeholder cifrene
0til7. Præfikset0ounderstøttes. - Decimal: Et almindeligt decimalt tal med cifrene
0til9. - Hex: Et heksadecimalt tal, der bruger cifrene
0til9samt bogstaverneAtilF(eller små bogstaveratilf). Præfikset0xunderstøttes.
Tal kan indeholde et indledende minustegn for at angive negative værdier, og de kan være omgivet af mellemrum.
Teksttilstand (Text mode)
- Input: Enhver tekststreng op til en maksimal grænse på 200.000 tegn.
- Bytes: Byte-værdier i enten binær, oktal, decimal eller heksadecimal form. De afkodede byte-værdier kan adskilles med mellemrum, tabulatorer eller kommaer. Hver enkelt værdi skal repræsentere præcis én byte, hvilket betyder en værdi fra 0 til 255 i det valgte talsystem.
Præcision og formatering af output
Værktøjet er designet til at levere nøjagtige tekniske data uden tab af præcision. Dette styres af en række faste formateringsregler:
- Ubegrænset præcision: Tal behandles og analyseres ved hjælp af
BigInt, hvilket muliggør håndtering af vilkårligt store heltal op til 4.096 tegn. Der er ingen praktisk størrelsesgrænse, og konverteringen sker helt uden afrunding. - Negative tal: Negative tal bevarer et indledende minustegn i alle fire talsystemer.
- Heksadecimalt output: Output i det heksadecimale felt formateres altid med store bogstaver.
- Udfyldning med nuler (Padding): For at bevare ensartede datastrukturer anvendes der specifikke regler for udfyldning med foranstillede nuler:
- Binært output udfyldes med førende nuler til 8 bits.
- Oktalt output udfyldes med førende nuler til 3 bits.
- Heksadecimalt output udfyldes med førende nuler til 2 bits.
- Decimalt output udfyldes ikke med førende nuler.
Tegnkodning og fejlhåndtering
Når tekst omdannes til talværdier, anvendes tegnkodningsstandarden UTF-8. Hvert tegn i teksten omdannes til en eller flere bytes i overensstemmelse med denne standard.
Hvis du indtaster ugyldige data, vil værktøjet afbryde konverteringen og vise en af følgende præcise fejlmeddelelser i statusfeltet:
- Hvis et tal indeholder tegn, der ikke hører til det valgte talsystem (f.eks. et
9-tal i et oktalt felt), vises meddelelsen: "Ikke et gyldigt tal for det valgte talsystem – tjek for tegn, det ikke må indeholde." - Hvis du indtaster byte-værdier, der ligger uden for det gyldige interval for en enkelt byte, eller som indeholder ugyldige tegn, vises meddelelsen: "Ikke gyldige byte-koder – hver værdi skal være én byte (0–255) i det valgte talsystem."
- Hvis du forsøger at afkode en række bytes, der ikke danner en gyldig UTF-8-sekvens, til tekst, vises meddelelsen: "Disse bytes er ikke gyldig UTF-8 og kan derfor ikke vises som tekst."
- Hvis inputtet overskrider grænsen på 200.000 tegn i teksttilstand, vises meddelelsen: "Det er for langt til dette værktøj – prøv med et kortere input."
Når felterne ryddes ved at trykke på knappen med teksten "Ryd", skifter status til "Ryddet.". Ved succesfulde handlinger opdateres statusfeltet til enten "Konverteret.", "Kodet." eller "Afkodet.".
Lokal databehandling og privatliv
Når du arbejder med følsomme data, kildekode eller personlige tekster, er datasikkerhed afgørende. Dette værktøj udfører alle beregninger og konverteringer lokalt på din egen computer.
Selve konverteringslogikken afvikles direkte i din browsers JavaScript-motor. Der sker ingen upload af dine indtastede tal eller tekster til eksterne servere, og dine data forlader aldrig din enhed.
Ofte stillede spørgsmål (FAQ)
Hvad kan jeg konvertere her?
To ting. Taltilstand forbinder binær, oktal, decimal og heksadecimal – rediger et vilkårligt felt, og resten opdateres med det samme. Teksttilstand omdanner tekst til dens byte-værdier i det valgte talsystem og læser disse bytes tilbage til tekst.
Håndterer den negative og meget store tal?
Ja. Negative tal beholder et indledende minus i alle talsystemer, og der er ingen praktisk størrelsesgrænse – værdier konverteres præcist uden afrunding. Der er ingen visning af to-komplement med fast bredde, da det kun giver mening, når du vælger en bit-bredde.
Sendes mit input nogen steder hen?
Nej. Alt beregnes lokalt i din browser, så intet af det, du skriver, uploades.
Hvorfor fejler afkodningen af mine byte-værdier til tekst?
Det kan skyldes to ting: Enten indeholder rækken en værdi, der ligger uden for intervallet 0–255 i det valgte talsystem, eller også udgør de indtastede bytes ikke en gyldig tegnsekvens i henhold til UTF-8-standarden.