ASCII

Стандарт 7-битной кодировки символов, сопоставляющий 128 символов с числовыми значениями (0-127).

Структура ASCII оптимизирована для побитовых операций. Разница между заглавными и строчными буквами ('A' = 65, 'a' = 97) заключается ровно в одном бите (6-й бит со значением 32). Сегодня таблица ASCII живет внутри Unicode: первые 128 символов Юникода на 100% идентичны стандарту ASCII.

        graph LR
  Center["ASCII"]:::main
  Rel_unicode["unicode"]:::related -.-> Center
  click Rel_unicode "/terms/unicode"
  Rel_binary["binary"]:::related -.-> Center
  click Rel_binary "/terms/binary"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Простыми словами

Компьютеры понимают только цифры. ASCII — это секретный код, который говорит компьютеру: «Если видишь число 65, нарисуй большую букву А. Если видишь 32, сделай пробел».

🤓 Expert Deep Dive

Оригинальный ASCII является строго 7-битным. Первые 32 значения (0x00-0x1F) — управляющие символы для телетайпов (например, CR и LF). Использование 8-го бита привело к созданию несовместимых кодовых страниц «Расширенного ASCII» (Windows-1251, KOI8-R). Главный триумф кодировки UTF-8 в том, что любой байт со старшим битом 0 — это валидный символ ASCII, что обеспечило идеальную обратную совместимость.

❓ Частые вопросы

Why is ASCII only 7 bits instead of 8 bits?

When ASCII was developed in the 1960s, a 7-bit code was sufficient to represent the English alphabet, numbers, and punctuation. The 8th bit in a byte was often reserved as a parity bit to check for errors during data transmission over unreliable networks.

What is the difference between ASCII and Unicode?

ASCII is limited to 128 characters and primarily supports English. Unicode is a massive standard designed to support over 149,000 characters across almost every language in the world, plus emojis. However, the first 128 characters of Unicode are identical to ASCII.

What are Extended ASCII codes?

Since computers use 8-bit bytes, the 7-bit ASCII standard left the 8th bit unused (values 128-255). Different companies (like IBM, Apple, and Microsoft) used these extra 128 slots for foreign letters and drawing symbols, creating incompatible 'Extended ASCII' code pages.

📚 Источники