От 7-битного телеграфа до 1.1М+ символов Unicode: история, таблицы, конвертеры
ASCII (American Standard Code for Information Interchange) — первая стандартная кодировка символов. Unicode — её современный наследник, включающий все письменности мира.
От телеграфа до Unicode: как развивалось кодирование символов
Первая электрическая телеграфная кодировка, разработанная Эmile-Бодо (Émile Baudot). 5 бит = 32 символа: 26 букв латинского алфавита + 6 знаков. Основана на фиксированной длине кода, в отличие от переменного кода Морзе. Скорость передачи измерялась в бодах (единицах в секунду). Именно Бодо заложил принцип: один символ = фиксированное количество бит.
Создан Американским национальным институтом стандартов (ANSI). Заменил телеграфный код Морзе и стал первым массовым компьютерным стандартом.
Создан в СССР для кириллицы в сетях Электроника-60 и USENET ( Usenet-конференции). Название — «Код Обмена Информацией — 8 бит».
A = 0x41, А = 0xC1Разработан Microsoft для Windows 3.1. Кириллица занимает позиции 128–255.
Создан Кеном Томпсоном и Робом Пайком (Unix, Bell Labs). Название: Unicode Transformation Format — 8-bit.
0xxxxxxx — 1 байт, 110xxxxx 10xxxxxx — 2 байта, 1110xxxx 10xxxxxx 10xxxxxx — 3 байта, 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx — 4 байтаОдна из форм Unicode с переменной длиной: 2 байта для базового диапазона (BMP), 4 байта для supplementary planes.
FE FF для BE, FF FE для LE — метка в начале файла41 00Самая простая форма Unicode: каждый символ = ровно 4 байта.
Базовая ASCII-таблица (0–127) и расширенная (128–255). UTF-8 кодирует ASCII символы теми же байтами.
Три формы представления Unicode и их особенности
| Кодировка | Байт/символ | ASCII-совместимость | Применение |
|---|---|---|---|
| UTF-8 | 1–4 | Да (1 байт = ASCII) | Веб, файлы, email |
| UTF-16 | 2 или 4 | Нет | Windows API, Java, .NET |
| UTF-32 | 4 | Нет | Внутренние структуры данных |
6 символов × 2 байта = 12 байт
6 символов × 2 байта = 12 байт
6 символов × 4 байта = 24 байта
Введите текст и увидите его представление в ASCII/Unicode.
Введите текст и выберите исходную кодировку. Увидите, как тот же текст выглядит во всех остальных кодировках.
Вычислите объём текста в разных кодировках