Slik bruker du verktøyet
- Velg Kode for å gjøre tekst om til binærkode, eller Dekode for å gjøre binærkode om til tekst igjen.
- Skriv eller lim inn teksten eller de binære sifrene, eller åpne en fil. Resultatet oppdateres mens du skriver.
- Velg Skilletegn for 8-bitsgruppene: Mellomrom, Ingen, Komma eller Linjeskift.
- Endre Tegnkoding hvis teksten ikke er UTF-8, og kopier eller last ned resultatet.
Slik blir tekst til binærkode
Datamaskiner lagrer tekst som byte. En tegnkoding som UTF-8 knytter hvert tegn til én eller flere byte, og hver byte er et tall fra 0 til 255. Skrevet med grunntall 2 trenger et slikt tall høyst åtte sifre, eller bit. Denne konverteren skriver hver byte som nøyaktig åtte bit og beholder de innledende nullene. Dermed har alle gruppene samme bredde, og binærkoden kan leses tilbake uten at du må gjette hvor én byte slutter og den neste begynner.
Vanlige engelske bokstaver, sifre og tegnsettingstegn tar én byte hver i UTF-8, så hvert tegn blir én gruppe på 8 bit. Andre tegn tar mer plass: bokstaver som é og ø bruker to byte, de fleste kinesiske og japanske tegn bruker tre, og emoji bruker fire, slik at én enkelt emoji blir 32 bit. Vil du ha én byte per tegn for vesteuropeisk tekst, velger du ISO-8859-1 eller Windows-1252 under Tegnkoding.
Oversette binærkode tilbake til tekst
Med Dekode valgt limer du inn bitene som grupper atskilt med mellomrom, komma eller linjeskift. Atskilte grupper kan mangle de innledende nullene, så utdata fra verktøy som skriver ut 7-bits ASCII, fungerer også. En sammenhengende streng med 0 og 1 deles opp i grupper på 8 bit, så lengden må være et multiplum av 8. Alle andre tegn, og grupper som er større enn 11111111 (255), rapporteres sammen med posisjonen sin.
Bytene leses deretter med den valgte tegnkodingen. Velg tegnkodingen som ble brukt da binærkoden ble laget, eller bytt utdata til Hex for å se de rå bytene.
Tekst til binær i kode
# Python
' '.join(f'{b:08b}' for b in 'Hi'.encode()) # '01001000 01101001'
bytes(int(g, 2) for g in '01001000 01101001'.split()).decode() # 'Hi'
// JavaScript
[...new TextEncoder().encode('Hi')]
.map(b => b.toString(2).padStart(8, '0')).join(' ') // '01001000 01101001'
Spesifikasjon
| Alfabet | 0 1 |
|---|---|
| Utdatastørrelse | 8 sifre per byte (800 %) |
| Utfylling | Ingen |
| Standard | Posisjonelt binært tallsystem |
| Skiller store og små bokstaver | Nei |
Eksempler
| Inndata (UTF-8) | Utdata |
|---|---|
Hello, World! | 01001000 01100101 01101100 01101100 01101111 00101100 00100000 01010111 01101111 01110010 01101100 01100100 00100001 |
Base64.is | 01000010 01100001 01110011 01100101 00110110 00110100 00101110 01101001 01110011 |
你好 | 11100100 10111101 10100000 11100101 10100101 10111101 |
Ofte stilte spørsmål
Hvor mange bit er det i ett tegn?
I ASCII, og for engelske bokstaver i UTF-8, er ett tegn én byte, altså 8 bit. Andre tegn tar 16, 24 eller 32 bit i UTF-8. I UTF-16 tar hvert tegn minst 16 bit.
Kan jeg konvertere binærkode til tekst uten mellomrom?
Ja, så lenge strengen er en sammenhengende rekke med hele grupper på 8 bit. Hvis gruppene har færre enn 8 sifre fordi innledende nuller er fjernet, må du holde dem atskilt med mellomrom eller komma, slik at dekoderen vet hvor hver byte slutter.
Er tekst til binær det samme som å konvertere et tall til binær?
Blir teksten min lastet opp noe sted?
Nei. Konverteringen skjer helt i nettleseren din, så teksten og filene du konverterer, forlater aldri enheten din.