В этой статье
Что такое ASCII?
ASCII (American Standard Code for Information Interchange) — це стандарт кодування символів, опублікований у 1963 році, який призначає числові значення 128 символам. Він включає 33 керуючі символи (коди 0-31 та 127), символ пробілу (код 32) та 94 друкованих символи, включаючи літери, цифри та розділові знаки.
ASCII став основою сучасного кодування тексту. Перші 128 кодових точок Unicode ідентичні ASCII, забезпечуючи зворотну сумісність. Кожен програміст стикається з значеннями ASCII при роботі з маніпуляцією символами, бінарними протоколами або валідацією даних.
Как работает кодирование ASCII
ASCII використовує 7 біт для представлення кожного символу, що дозволяє рівно 128 унікальних значень (від 0 до 127). Кодування поділяється на керуючі символи, друковані символи та організовані діапазони для цифр, великих та малих літер.
- Керуючі символи (0-31, 127) — недруковані коди, такі як NULL (0), TAB (9), LF (10), CR (13) та ESC (27), що керують обробкою тексту
- Друкований діапазон (32-126) — пробіл (32), цифри 0-9 (48-57), великі літери A-Z (65-90), малі літери a-z (97-122) та розділові знаки
- Шаблони проектування — великі та малі літери відрізняються рівно на 32 (біт 5), що робить перетворення регістру операцією над одним бітом
Попробуйте бесплатно — без регистрации
Исследовать таблицу ASCII →Когда использовать справочник ASCII
Мати таблицю ASCII під рукою є необхідним для багатьох поширених завдань програмування та налагодження.
- Валідація символів — перевірити, чи байт потрапляє в друкований діапазон ASCII (32-126) при очищенні вхідних даних або побудові парсерів
- Налагодження протоколів — багато мережевих протоколів (HTTP, SMTP, FTP) використовують текст ASCII для заголовків та команд, тому знання кодів символів допомагає аналізувати необроблений трафік
- Бітові маніпуляції — таблиця ASCII виявляє шаблони, такі як перетворення цифри в значення (відняти 48), перемикання регістру (XOR з 32) та ідентифікація керуючих символів
Часто задаваемые вопросы
Яка різниця між ASCII та Unicode?
ASCII визначає 128 символів на 7 бітах. Unicode — це надмножина, яка визначає понад 149 000 символів для всіх систем письма. Перші 128 кодових точок Unicode (U+0000 до U+007F) ідентичні ASCII, тому будь-який дійсний текст ASCII також є дійсним Unicode UTF-8.
Для чого використовуються керуючі символи ASCII?
Керуючі символи (0-31 та 127) спочатку були розроблені для управління телетайпами та принтерами. Сьогодні найбільш використовуваними є NULL (0) для завершення рядків у C, TAB (9) для відступів, LF (10) для розривів рядків Unix, CR (13) для розривів рядків Windows (CR+LF) та ESC (27) для escape-послідовностей терміналу.
Чому великі та малі літери відрізняються на 32 в ASCII?
Це зроблено навмисно. Велика A — це 65 (0100 0001), а мала a — це 97 (0110 0001) — вони відрізняються лише бітом 5. Це робить перетворення регістру надзвичайно ефективним: перемикання біта 5 для зміни регістру, встановлення біта 5 для малих літер, очищення біта 5 для великих літер.