Slik bruker du verktøyet
- Velg Kode for å gjøre tekst om til desimaltall, eller Dekode for å gjøre tall om til tekst igjen.
- Skriv eller lim inn inndataene, eller åpne en fil. Resultatet oppdateres mens du skriver.
- Velg Skilletegn for tallene: Mellomrom, Komma eller Linjeskift.
- Kopier tallene eller last dem ned som en fil.
Desimale byteverdier og ASCII-koder
Hvert tegn i en datamaskin lagres som én eller flere byte, og en byte er rett og slett et tall fra 0 til 255. Dette verktøyet skriver hvert av disse tallene i vanlig desimal notasjon. For engelsk tekst er tallene de velkjente ASCII-kodene: store bokstaver går fra 65 til 90, små bokstaver fra 97 til 122, sifrene 0 til 9 fra 48 til 57, og et mellomrom er 32. Kontrolltegn ligger under 32, for eksempel 10 for linjeskift (line feed) og 13 for vognretur (carriage return).
Resultatet er den samme listen som du får fra ord() i Python eller ved å lese en Uint8Array i JavaScript, og det er en praktisk måte å oppdage usynlige tegn, linjeslutt eller et byte order mark (BOM) i en streng.
Ett tall per byte, ikke ett stort tall
Konverteringen skjer byte for byte: Et ord på to bokstaver blir to tall, ikke ett enkelt heltall. Verdier over 127 forekommer aldri i ASCII-tekst. I UTF-8 kommer de i grupper på to til fire byte som til sammen utgjør ett tegn, og derfor gir en bokstav med aksent eller et kinesisk tegn flere tall. Vil du ha én verdi per tegn i vesteuropeisk tekst, velger du ISO-8859-1, der hver byteverdi er lik tegnets Unicode-kodepunkt, eller Windows-1252.
Vil du heller konvertere ett enkelt tall mellom tallsystemer, for eksempel 255 til heksadesimalt, bruker du tallsystemkonverteren. For å se de samme bytene i andre notasjoner kan du prøve hex eller binær.
Desimale byteverdier i kode
# Python
list('Hi'.encode()) # [72, 105]
bytes([72, 105]).decode() # 'Hi'
// JavaScript
[...new TextEncoder().encode('Hi')] // [72, 105]
new TextDecoder().decode(new Uint8Array([72, 105])) // 'Hi'
Spesifikasjon
| Alfabet | 0-9 |
|---|---|
| Utdatastørrelse | 1 til 3 sifre per byte, pluss skilletegn |
| Utfylling | Ingen |
| Standard | Desimale byteverdier |
| Skiller store og små bokstaver | Nei |
Eksempler
| Inndata (UTF-8) | Utdata |
|---|---|
Hello, World! | 72 101 108 108 111 44 32 87 111 114 108 100 33 |
Base64.is | 66 97 115 101 54 52 46 105 115 |
你好 | 228 189 160 229 165 189 |
Ofte stilte spørsmål
Hva er den desimale ASCII-koden for A?
Stor A er 65 og liten a er 97, både i ASCII og i UTF-8. Hver påfølgende bokstav legger til én, så Z er 90 og z er 122.
Kan jeg dekode desimaltall uten skilletegn?
Nei. En rekke sifre som 72105 kan deles opp på mer enn én måte, så dekoderen trenger tall som er atskilt med mellomrom, komma, semikolon eller linjeskift. Innledende nuller er tillatt.
Hvorfor gir tall over 255 en feil?
En byte kan ha verdier fra 0 til 255. Større tall, som Unicode-kodepunktet 8364 for eurotegnet, er ikke byteverdier. Skriv inn selve tegnet og kod det for å se bytene, for eksempel i UTF-8.
Hvorfor blir ett tegn til flere tall?
UTF-8 lagrer tegn utenfor ASCII som to, tre eller fire byte, og hver byte blir et eget tall. Velg et enkeltbyte-tegnsett som Windows-1252 hvis du trenger ett tall per vesteuropeisk tegn.