T

Text Machine

Мощные текстовые инструменты прямо в браузере

Конвертер текста ↔ двоичного кода

Преобразуйте текст в двоичный код и обратно прямо в браузере. Полная поддержка UTF-8 означает, что буквы, цифры, символы и даже эмодзи преобразуются корректно — выберите вывод по 8 бит с пробелами между байтами или сплошным потоком.

Разделитель

Ввод текста
Вывод двоичного кода

Введите данные выше, чтобы увидеть здесь результат преобразования.

Как пользоваться Конвертер текста в двоичный код

  1. 1

    Выберите направление

    С помощью переключателя выберите «Текст в двоичный код» или «Двоичный код в текст». Кнопка обмена переносит результат во ввод, чтобы можно было преобразовать его в обратную сторону.

  2. 2

    Введите данные

    Введите или вставьте текст либо вставьте строку двоичного кода. Преобразование выполняется автоматически по мере ввода, с полной поддержкой UTF-8 для любого символа.

  3. 3

    Выберите разделитель

    Для двоичного вывода выберите пробел между байтами для удобочитаемости или отсутствие разделителя для сплошного потока. При декодировании пробелы необязательны.

  4. 4

    Скопируйте результат

    Проверьте преобразованный результат и скопируйте его в буфер обмена — готовым к вставке там, где это нужно.

Как текст превращается в двоичный код

Что такое двоичный код и почему его используют компьютеры

Двоичный код — это система счисления с основанием 2, построенная всего из двух цифр: 0 и 1. Каждую такую цифру называют битом (от англ. binary digit — двоичная цифра). Компьютеры используют двоичный код, потому что их физические компоненты представляют собой переключатели с двумя устойчивыми состояниями — включено или выключено, высокое напряжение или низкое, — и эти два состояния естественным образом соответствуют 1 и 0. Всё, что хранит компьютер, включая это самое предложение, в конечном счёте представляет собой длинную последовательность битов.

Текст — не исключение. Чтобы сохранить букву, компьютер сначала закрепляет за ней число с помощью кодировки символов, а затем хранит это число в двоичном виде. Преобразовать текст в двоичный код вручную — значит просто явно выполнить эти два шага: найти числовой код каждого символа, а затем записать этот код в системе с основанием 2. Этот инструмент показывает результат в виде групп битов, чтобы вы могли разглядеть его структуру.

Байты и 8-битная группа

Байт — это группа из восьми битов и основная единица хранения данных. Восемь битов позволяют представить два в восьмой степени, то есть 256, различных значений, пронумерованных от 0 до 255. Этого диапазона ровно достаточно, чтобы охватить исходный набор символов ASCII и многое сверх того, — именно поэтому байт стал стандартным размером для одного символа простого текста.

Поскольку байт всегда состоит из восьми битов, этот конвертер записывает каждый байт как группу фиксированной длины в восемь цифр, при необходимости дополняя её ведущими нулями. Буква с кодом 72 записывается как 01001000, а не просто 1001000, чтобы все байты выстраивались по одинаковой ширине. Группы можно разделять пробелами для удобочитаемости или соединять в сплошной поток — биты в обоих случаях одни и те же.

От символа к битам, шаг за шагом

Преобразование одного символа состоит из двух действий. Сначала найдите его кодовую точку — для обычных латинских букв это значение ASCII, так что заглавная H равна 72, а строчная i — 105. Затем представьте это число в виде восьми битов, выяснив, какие степени двойки в сумме его дают. Позиции битов, слева направо, несут значения 128, 64, 32, 16, 8, 4, 2 и 1.

Возьмём 72. Оно равно 64 плюс 8, поэтому вы ставите 1 в позиции 64 и 1 в позиции 8, а во всех остальных — 0, что даёт 01001000. Возьмём 105. Оно равно 64 плюс 32 плюс 8 плюс 1, поэтому биты получаются 01101001. Чтобы пойти в обратную сторону, сложите значения разрядов везде, где стоит 1, и вы восстановите исходный код, по которому затем находится символ.

Разбор примера: кодирование «Hi»

Пропустим через этот процесс две буквы — H и i. У H код ASCII равен 72, то есть 64 + 8, что даёт байт 01001000. У буквы i код ASCII равен 105, то есть 64 + 32 + 8 + 1, что даёт байт 01101001. Соединённое пробелом, «Hi» превращается в 01001000 01101001.

Обратное чтение — та же арифметика, только наоборот. В первой группе 01001000 единицы стоят в позициях 64 и 8, в сумме они дают 72 — это H. Вторая группа 01101001 в сумме даёт 64 + 32 + 8 + 1 = 105 — это i. Две восьмибитные группы, два символа — наглядная демонстрация того, как хранится короткое слово.

ASCII против UTF-8 и многобайтовые символы

Простая картина «один символ — один байт» верна только для исходного набора ASCII, кодовых точек от 0 до 127, который охватывает латинские буквы, цифры и распространённые знаки препинания. Всё, что выходит за эти рамки, — буквы с диакритикой, другие письменности, символы и эмодзи — использует UTF-8, кодировку, которую применяет этот инструмент. UTF-8 имеет переменную ширину: символ ASCII остаётся одним байтом, а другие символы занимают два, три или четыре байта, и каждый байт становится отдельной восьмибитной группой.

Например, буква é с диакритикой в UTF-8 — это два байта, 0xC3 и 0xA9, поэтому она даёт две двоичные группы: 11000011 10101001. Типичное эмодзи занимает четыре байта и, следовательно, четыре группы. Вот почему строка текста не на английском языке даёт больше восьмибитных групп, чем в ней видимых символов, и почему общее число битов всегда кратно восьми.

Чтение двоичного кода обратно в текст

Для декодирования инструмент разрезает поток битов на восьмибитные фрагменты, превращает каждый фрагмент в число и декодирует эти числа как UTF-8, восстанавливая символы. Чтобы это работало, ввод должен содержать только цифры 0 и 1, а общее число битов должно быть кратно восьми, ведь байт не может быть долей от восьми битов.

Пробелы между группами необязательны и игнорируются, поэтому и 0100100001101001, и 01001000 01101001 декодируются в «Hi». Если вы вставляете двоичный код и получаете ошибку преобразования, обычные причины — затесавшийся где-то в строке недвоичный символ или длина, не кратная восьми, например один пропущенный или лишний бит. Устраните это, и декодирование пройдёт успешно.

Где это пригодится

Преобразование текста в двоичный код — неизменный элемент обучения. Оно делает абстрактную мысль о том, что «компьютеры хранят всё в виде чисел», конкретной и наглядной, поэтому встречается на уроках информатики, в учебных руководствах по программированию и в упражнениях о кодировках символов. Когда видишь, как «Hi» превращается в 01001000 01101001, понять, что такое байт, становится куда проще, чем по одному только определению.

Помимо обучения, это преобразование встречается в головоломках, эскейп-румах и соревнованиях формата capture-the-flag, где строка из единиц и нулей — распространённый способ спрятать короткое сообщение. Оно также удобно для низкоуровневой отладки, когда нужно рассмотреть точное битовое представление символа или проверить, как тот или иной символ Unicode кодируется в UTF-8. Однако для реального хранения данных компьютеры выполняют это преобразование незаметно — а этот инструмент нужен, чтобы его понять и рассмотреть.

Часто задаваемые вопросы

Как текст преобразуется в двоичный код?
Каждый символ кодируется в байты UTF-8, и каждый байт записывается как 8-битное двоичное число. Обычные латинские буквы дают по одной 8-битной группе, тогда как буквы с диакритическими знаками, символы и эмодзи занимают от двух до четырёх байтов, поэтому им соответствует несколько 8-битных групп.
Поддерживаются ли эмодзи и текст не на английском языке?
Да. Поскольку инструмент использует UTF-8, он обрабатывает любой символ Unicode — буквы с диакритикой, кириллицу, греческий, китайский, японский, арабский, эмодзи и многое другое. Они кодируются в правильные многобайтовые последовательности и декодируются обратно без потерь.
Какой формат двоичного кода ожидает декодер?
Декодер «Двоичный код в текст» читает 8-битные группы. Пробелы между байтами необязательны, поэтому подойдёт как сплошной поток, так и байты, разделённые пробелами. Общее число двоичных цифр должно быть кратно 8, и допускаются только цифры 0 и 1.
Почему возникла ошибка преобразования?
Декодирование не выполняется, если двоичный код содержит символы, отличные от 0 и 1, или если общая длина не кратна 8 битам. Удалите лишние символы и убедитесь, что в каждом байте ровно 8 цифр, — тогда преобразование пройдёт успешно.
Загружаются ли мои данные на сервер?
Нет. Всё преобразование происходит полностью в вашем браузере. Ваш текст никогда не загружается, не записывается в журнал и не сохраняется, поэтому он остаётся полностью конфиденциальным, а инструмент продолжает работать даже офлайн.

Похожие инструменты

Продолжайте работу с этими удобными инструментами

Конвертер текста в HEX

Переводчик азбуки Морзе

Переводчик фонетического алфавита НАТО

Переводчик Брайля

Шифр Цезаря

Шифр Виженера