tigtools

Szöveg-bináris konverter

Alakítsa át a szöveget a számítógép által tárolt bájtokká bináris, hexadecimális, decimális vagy oktális formában, vagy illesszen be bájtokat, hogy szövegként olvashassa őket. Bármely nyelvvel és emojival működik.

Böngészőben fut Regisztráció nélkül

Irány
Bájtok között

Használata

  1. Válassza a „Szöveg → bájtok” lehetőséget a kódoláshoz, vagy a „Bájtok → szöveg” lehetőséget a dekódoláshoz.
  2. Válasszon bájtformátumot: bináris, hexadecimális, decimális vagy oktális.
  3. Gépelje be vagy illessze be a bemenetet. Az eredmény és a bájtszám gépelés közben frissül.
  4. Másolja ki az eredményt, vagy cserélje be bemenetként, hogy ellenőrizze az oda-vissza alakítást.

Hogyan működik

A számítógépek bájtokban tárolják a szöveget. Ez az eszköz az UTF-8 kódolást használja, amelyet szinte minden weboldal és modern rendszer használ. Az UTF-8-ban a 128 ASCII karakter (angol betűk, számjegyek és alapvető írásjelek) egy-egy bájtot foglalnak el, így a H binárisan 01001000, hexadecimálisan pedig 48. Az összes többi karakter két-négy bájtot használ: az é 2 bájt (C3 A9), a € és a ☕ 3 bájt, a legtöbb emoji pedig 4 bájt. Ezért fordulhat elő, hogy a bájtok száma nagyobb, mint a karakterek száma, és ezért alakulhat át egy karakter több 8 bites csoporttá.

Minden bájt négy elterjedt módon írható fel: 8 jegyű bináris (00000000–11111111), 2 jegyű hexadecimális (00–FF), decimális (0–255) vagy 3 jegyű oktális (000–377) formában. Ha a bájtokat elválasztójelek nélkül írjuk, a bináris, hexadecimális és oktális értékeket rögzített hosszúságúra egészítjük ki, a decimális értékeket pedig 3 számjegyre, hogy egyértelműen szétválaszthatók legyenek.

A dekódolás megengedő a formázással szemben: a bájtok közötti szóközök, sortörések, vesszők és pontosvesszők figyelmen kívül maradnak, csakúgy, mint a 0x és 0b előtagok, valamint a \x escape-szekvenciák. A program minden csoportot ellenőriz; ha egy számjegy nem megengedett a kiválasztott formátumban, vagy az érték nagyobb 255-nél, a bájt pozíciójával együtt hibát jelez. A dekódolás után ellenőrzi, hogy a bájtok érvényes UTF-8 szöveget alkotnak-e, és jelzi, ha nem szövegről van szó.

A több kódpontból álló karakterek, például a zászlók vagy a bőrtónusú emojik itt több karakternek számítanak, mert minden kódpont külön kódolódik.

Példák

A klasszikus „Hi” binárisan

A H ASCII-kódja 72, az i betűé 105, így a „Hi” binárisan 01001000 01101001, hexadecimálisan 48 69, decimálisan pedig 72 105 lesz: 2 karakter, 2 bájt, 16 bit.

Miért 5 bájt a „Café”?

A C, az a és az f karakter egyenként 1 bájt, az é viszont 2 bájt UTF-8-ban: 11000011 10101001 (C3 A9). A szó 4 karakterből áll, de 5 bájtot foglal, ami számít az adatbázis-oszlopok méretkorlátjainál és a bájtban mért protokollmezőknél.

Hex dump olvasása

A debugger ezt mutatja: 48 65 6c 6c 6f 2c 20 e4 b8 96 e7 95 8c. Illessze be a „Bájtok → szöveg” és a Hexadecimális beállítással, hogy ezt kapja: „Hello, 世界”; minden kínai karakter 3 bájt.

Gyakori kérdések

Miért lesz egyetlen karakterből 16, 24 vagy 32 bit?

Az UTF-8-ban csak az ASCII-karakterek férnek el egyetlen bájtban (8 bit). Az ékezetes betűk és a legtöbb más ábécé karakterei 2 bájtot használnak, a kínai, a japán, a koreai és sok szimbólum 3-at, az emojik pedig 4-et. Minden bájt külön csoportként látható.

Ez ASCII vagy UTF-8?

UTF-8. Egyszerű angol szöveg esetén az eredmény megegyezik az ASCII-vel, mert az UTF-8-ot úgy tervezték, hogy kompatibilis legyen vele. Az ASCII-n kívüli karaktereket az ASCII önmagában nem tudná ábrázolni.

Miért kapok hibát a bináris dekódolásakor?

Minden bájtnak legfeljebb 8 bináris számjegyből kell állnia, és csak 0-t és 1-et tartalmazhat. Szóközök nélkül a számjegyek számának 8 többszörösének kell lennie. A hibaüzenet megnevezi a beolvashatatlan bájtot.

Mit jelent az, hogy „nem érvényes UTF-8”?

A bájtok nem alkotnak érvényes UTF-8 sorozatot, például egy magányos 127 feletti bájt vagy egy közben félbeszakadt sorozat. Az adat lehet, hogy más kódolású fájlból származik, például Windows-1252, vagy egyáltalán nem szöveg.

Adatvédelem

Az átalakítás a böngészőjében fut, annak beépített UTF-8 kódolójával és dekódolójával. A szöveget nem töltjük fel, nem tároljuk, és nem használjuk fel elemzésekhez.