Utilia

Tekst u binarni, heksadecimalni i ASCII

Pretvori tekst u binarne, heksadecimalne, decimalne ili oktalne kodove i nazad, uz UTF-8 bajtove ili Unicode kodne tačke, razdelnike i tabelu znakova.

Znakovi
0
Kodne tačke
0
UTF-8 bajtovi
0
Tabela znakova
ZnakKodna tačkaDecimalnoUTF-8 (heks)UTF-8 (binarno)

Kako koristiti pretvarač teksta u binarni

  1. Upiši ili nalepi tekst u polje za unos, pa klikni Tekst → kodovi. Rezultat se pojavljuje ispod i ažurira se dok kucaš.
  2. Izaberi Format: Binarni (osnova 2), Heksadecimalni (osnova 16), Decimalni (osnova 10) ili Oktalni (osnova 8).
  3. Pod Kodovi predstavljaju ostavi UTF-8 bajtove (kompatibilno sa ASCII) za uobičajeni zapis „tekst u binarni“, ili izaberi Unicode kodne tačke da dobiješ po jedan broj za svaki znak.
  4. Izaberi Razdelnik (Razmak, Bez razdelnika, Zarez ili Novi red) i označi Dodaj prefiks (0b, 0o, 0x) ako ti trebaju kodovi zapisani onako kako ih očekuju programski jezici.
  5. Za suprotan smer nalepi kodove i klikni Kodovi → tekst. Alat pogađa format kad ga promeniš, a možeš ga ispraviti u polju Format.

Kopiraj kopira rezultat, a Iskoristi rezultat kao unos prebacuje rezultat u polje za unos i okreće smer, što je brz način da proveriš pretvaranje tamo i nazad. Tabela znakova navodi svaki znak sa njegovom kodnom tačkom, decimalnom vrednošću i UTF-8 bajtovima u heksadecimalnom i binarnom zapisu.

ASCII, Unicode i UTF-8

Računari čuvaju tekst kao brojeve. ASCII, definisan šezdesetih godina, dodeljuje broj od 0 do 127 engleskim slovima, ciframa, interpunkciji i nekoliko kontrolnih znakova: „H“ je 72, što je 01001000 binarno i 48 heksadecimalno. ASCII nema mesta za č, ć, š, ž, đ, € ili emotikone, pa se danas tekst piše u Unicode-u, koji svakom znaku daje kodnu tačku, zapisanu kao U+010D za č.

UTF-8 je način na koji skoro svaka veb-stranica i fajl čuvaju te kodne tačke kao bajtove. Ključna osobina je kompatibilnost: 128 ASCII znakova zadržava jedan bajt, pa „Hello“ daje potpuno isti binarni zapis u ASCII i u UTF-8. Ostali znakovi zauzimaju 2 do 4 bajta: č je C4 8D (dva bajta), € je E2 82 AC (tri), a 😀 je F0 9F 98 80 (četiri). Alat ti kaže koliko je znakova izvan ASCII, a brojači prikazuju broj stavki Znakovi, Kodne tačke i UTF-8 bajtovi. Oni se mogu razlikovati: 👍🏽 je jedan vidljiv znak sastavljen od dve kodne tačke i osam bajtova.

Dekodiranje kodova nazad u tekst

Pri dekodiranju kodovi mogu biti razdvojeni razmacima, zarezima, tačkama sa zarezom ili prelomima redova. Prefiksi kao što su 0b, 0x, \x, U+ i HTML entiteti poput H ili H uklanjaju se automatski. Binarni i heksadecimalni bajtovi mogu se nalepiti i bez razdelnika: 0100100001101001 se deli na grupe od 8 bitova, a c3a9 na parove heksadecimalnih cifara.

Alat proverava svaki kod i tačno ti kaže koji je pogrešan: cifru koja ne pripada izabranoj osnovi, bajt veći od 255, grupu koja se ne može ravnomerno podeliti ili kodnu tačku iznad U+10FFFF. Ako su bajtovi ispravni brojevi, ali ne čine ispravan UTF-8 (na primer C3 iza kog sledi 28), tekst se i dalje prikazuje sa � umesto pokvarenog niza, a poruka objašnjava zašto.

Primeri

  • „Hi“ binarno: 01001000 01101001
  • „Hi“ heksadecimalno: 48 69
  • „Hi“ decimalno: 72 105
  • „č“ kao UTF-8 bajtovi heksadecimalno: C4 8D; kao kodna tačka: 10D

Česta pitanja

Koja je razlika između ASCII i binarnog?

ASCII je tabela koja znakovima dodeljuje brojeve. Binarni zapis je samo način da se ti brojevi napišu nulama i jedinicama. Pretvaranje teksta u binarni znači potražiti broj svakog znaka i napisati ga u osnovi 2.

Zašto č zauzima 16 bitova umesto 8?

U UTF-8 samo 128 ASCII znakova staje u jedan bajt. Slova sa dijakritičkim znacima trebaju dva bajta, pa č postaje 11000100 10001101. Uz Unicode kodne tačke, č je jedan broj, 100001101 (269).

Mogu li da dekodiram binarni zapis bez razmaka?

Da, za bajtove u binarnom ili heksadecimalnom zapisu, sve dok je dužina umnožak od 8 bitova ili 2 heksadecimalne cifre. Decimalni kodovi traže razdelnik, osim ako je svaki zapisan sa tačno 3 cifre.

Koja opcija odgovara „tekst u heks“ u programiranju?

UTF-8 bajtovi u heksadecimalnom formatu. Daju isti rezultat kao kodiranje niske u UTF-8 u Pythonu, JavaScriptu ili većini drugih jezika.

Da li se moj tekst otprema?

Ne. Pretvaranje se u potpunosti odvija u tvom pregledaču; ništa se ne šalje preko mreže.