Jak używać
- Wybierz „Koduj”, aby zamienić tekst na kod binarny, lub „Dekoduj”, aby zamienić kod binarny z powrotem na tekst.
- Wpisz lub wklej tekst albo cyfry binarne bądź otwórz plik. Wynik aktualizuje się na bieżąco podczas pisania.
- Wybierz separator 8-bitowych grup: „Spacja”, „Brak”, „Przecinek” lub „Nowy wiersz”.
- Jeśli tekst nie jest zapisany w UTF-8, zmień „Kodowanie tekstu”, a następnie skopiuj lub pobierz wynik.
Jak tekst zamienia się w kod binarny
Komputery przechowują tekst w postaci bajtów. Kodowanie tekstu, takie jak UTF-8, przypisuje każdemu znakowi jeden lub więcej bajtów, a każdy bajt to liczba od 0 do 255. Zapisana w systemie dwójkowym liczba ta wymaga najwyżej ośmiu cyfr, czyli bitów. Ten konwerter zapisuje każdy bajt jako dokładnie osiem bitów i zachowuje zera wiodące, dzięki czemu wszystkie grupy mają tę samą szerokość, a kod binarny można odczytać z powrotem bez zgadywania, gdzie kończy się jeden bajt, a zaczyna następny.
Podstawowe litery łacińskie bez znaków diakrytycznych, cyfry i znaki interpunkcyjne zajmują w UTF-8 po jednym bajcie, więc każdy taki znak staje się jedną 8-bitową grupą. Inne znaki zajmują więcej: litery z akcentami, takie jak é, a także polskie ą czy ł, zajmują dwa bajty, większość znaków chińskich i japońskich – trzy, a emoji – cztery, więc pojedyncze emoji zamienia się w 32 bity. Aby uzyskać jeden bajt na znak w tekście zachodnioeuropejskim, wybierz ISO-8859-1 lub Windows-1252 w menu „Kodowanie tekstu”; dla tekstu polskiego tę samą rolę pełni ISO-8859-2.
Tłumaczenie kodu binarnego z powrotem na tekst
W trybie „Dekoduj” wklej bity jako grupy oddzielone spacjami, przecinkami lub podziałami wierszy. W rozdzielonych grupach można pominąć zera wiodące, więc działa również wynik narzędzi wypisujących 7-bitowe kody ASCII. Ciągły ciąg zer i jedynek jest dzielony na grupy po 8 bitów, dlatego jego długość musi być wielokrotnością 8. Każdy inny znak, a także grupa większa niż 11111111 (255), jest zgłaszany wraz z pozycją.
Uzyskane bajty są następnie odczytywane w wybranym kodowaniu tekstu. Wybierz kodowanie, w którym utworzono kod binarny, albo ustaw „Wyjście jako” na „Hex”, aby zobaczyć surowe bajty.
Zamiana tekstu na kod binarny w kodzie
# 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'
Specyfikacja
| Alfabet | 0 1 |
|---|---|
| Rozmiar wyniku | 8 cyfr na bajt (800%) |
| Dopełnienie | Brak |
| Standard | Pozycyjny system dwójkowy |
| Rozróżnia wielkość liter | Nie |
Przykłady
| Wejście (UTF-8) | Wyjście |
|---|---|
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 |
Najczęściej zadawane pytania
Ile bitów ma jeden znak?
W ASCII, a także w przypadku liter alfabetu angielskiego w UTF-8, jeden znak to jeden bajt, czyli 8 bitów. Inne znaki zajmują w UTF-8 16, 24 lub 32 bity. W UTF-16 każdy znak zajmuje co najmniej 16 bitów.
Czy można zamienić kod binarny na tekst bez spacji?
Tak, pod warunkiem że ciąg składa się wyłącznie z następujących po sobie pełnych 8-bitowych grup. Jeśli grupy mają mniej niż 8 cyfr, ponieważ pominięto zera wiodące, oddziel je spacjami lub przecinkami, aby dekoder wiedział, gdzie kończy się każdy bajt.
Czy zamiana tekstu na kod binarny to to samo co zamiana liczby na system dwójkowy?
Czy mój tekst jest gdzieś wysyłany?
Nie. Konwersja odbywa się w całości w przeglądarce, więc konwertowany tekst i pliki nigdy nie opuszczają urządzenia.