Перейти к содержанию

Таблица ASCII

ASCII назначает номер 128 символам — цифрам, латинским буквам без диакритики, распространённым знакам препинания и 33 управляющим кодам, которые никогда не предназначались для печати. Каждый из них перечислен ниже в десятичном, шестнадцатеричном, восьмеричном и двоичном виде, с номером HTML-сущности.

Первые 32 кода и последний — управляющие. Большинство из них исторические, из эпохи телетайпов и бумажной ленты, но несколько по-прежнему обеспечивают всё, что вы печатаете: 9 — это Tab, 10 — символ новой строки Unix, 13 — возврат каретки, который Windows использует вместе с ним, а 27 начинает каждую управляющую последовательность ANSI, которую ваш терминал использует для цвета.

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

Управляющие коды

0–31, 127
Дес.Шестн.Восьм.ДвоичныйСимволHTMLНазвание
00000000000000NUL�NullЗавершитель строки в C. Не печатаемый символ.
10100100000001SOHНачало заголовкаИсторическое; обрамлял заголовок блока передачи.
20200200000010STXНачало текстаИсторическое; отмечал начало тела сообщения.
30300300000011ETXКонец текстаОтправляется по Ctrl+C — вот почему эта клавиша прерывает программу.
40400400000100EOTКонец передачиОтправляется по Ctrl+D; закрывает stdin в оболочке Unix.
50500500000101ENQЗапросИсторическое; просил удалённую сторону представиться.
60600600000110ACKПодтверждениеПоложительный ответ в старых последовательных протоколах.
70700700000111BELЗвонокЗвонит в терминальный звонок. Записывается как \a в C.
80801000001000BSBackspaceПеремещает курсор на один столбец назад. Записывается как \b.
90901100001001HT	Горизонтальная табуляцияКлавиша Tab. Записывается как \t.
100A01200001010LF
Перевод строкиСимвол новой строки Unix. Записывается как \n.
110B01300001011VTВертикальная табуляцияРедкий; переходит к следующей позиции вертикальной табуляции. Записывается как \v.
120C01400001100FFПрогон страницыРазрыв страницы для принтеров. Записывается как \f.
130D01500001101CR
Возврат кареткиВозвращает в первый столбец. В паре с LF в Windows. Записывается как \r.
140E01600001110SOShift OutИсторическое; переключал на альтернативный набор символов.
150F01700001111SIShift InИсторическое; переключал обратно на стандартный набор.
161002000010000DLEData Link EscapeИсторическое; делал следующие байты управляющими данными.
171102100010001DC1Управление устройством 1XON — возобновляет приостановленную передачу. Отправляется по Ctrl+Q.
181202200010010DC2Управление устройством 2Историческое управление устройством.
191302300010011DC3Управление устройством 3XOFF — приостанавливает передачу. Отправляется по Ctrl+S.
201402400010100DC4Управление устройством 4Историческое управление устройством.
211502500010101NAKОтрицательное подтверждениеОтрицательный ответ в старых последовательных протоколах.
221602600010110SYNСинхронный простойЗаполнял тишину на синхронных каналах.
231702700010111ETBКонец блока передачиИсторическое; завершал один блок более длинного сообщения.
241803000011000CANОтменаОтбрасывает данные, отправленные перед ним.
251903100011001EMКонец носителяОтмечал физический конец ленты или колоды карт.
261A03200011010SUBЗаменаМаркер конца файла в DOS и CP/M. Отправляется по Ctrl+Z.
271B03300011011ESCEscapeНачинает управляющую последовательность ANSI — цвета терминала и перемещения курсора.
281C03400011100FSРазделитель файловСамый крупный из четырёх разделителей данных.
291D03500011101GSРазделитель группРазделяет группы внутри файла.
301E03600011110RSРазделитель записейРазделяет записи внутри группы.
311F03700011111USРазделитель элементовСамый мелкий разделитель; иногда используется как разделитель полей.
1277F17701111111DELDeleteВсе биты пробиты на бумажной ленте — поэтому он в самом верху.

Пробел

32
Дес.Шестн.Восьм.ДвоичныйСимволHTMLНазвание
322004000100000  Пробел

Знаки препинания и символы

33–47, 58–64, 91–96, 123–126
Дес.Шестн.Восьм.ДвоичныйСимволHTMLНазвание
332104100100001!!Восклицательный знак
342204200100010""Кавычка
352304300100011##Знак номера
362404400100100$$Знак доллара
372504500100101%%Знак процента
382604600100110&&Амперсанд
392704700100111''Апостроф
402805000101000((Левая круглая скобка
412905100101001))Правая круглая скобка
422A05200101010**Звёздочка
432B05300101011++Знак плюс
442C05400101100,,Запятая
452D05500101101--Дефис-минус
462E05600101110..Точка
472F05700101111//Косая черта
583A07200111010::Двоеточие
593B07300111011;&#59;Точка с запятой
603C07400111100<&#60;Знак «меньше»
613D07500111101=&#61;Знак равенства
623E07600111110>&#62;Знак «больше»
633F07700111111?&#63;Вопросительный знак
644010001000000@&#64;Коммерческое at
915B13301011011[&#91;Левая квадратная скобка
925C13401011100\&#92;Обратная косая черта
935D13501011101]&#93;Правая квадратная скобка
945E13601011110^&#94;Циркумфлекс
955F13701011111_&#95;Нижнее подчёркивание
966014001100000`&#96;Гравис
1237B17301111011{&#123;Левая фигурная скобка
1247C17401111100|&#124;Вертикальная черта
1257D17501111101}&#125;Правая фигурная скобка
1267E17601111110~&#126;Тильда

Цифры

48–57
Дес.Шестн.Восьм.ДвоичныйСимволHTMLНазвание
4830060001100000&#48;Цифра 0
4931061001100011&#49;Цифра 1
5032062001100102&#50;Цифра 2
5133063001100113&#51;Цифра 3
5234064001101004&#52;Цифра 4
5335065001101015&#53;Цифра 5
5436066001101106&#54;Цифра 6
5537067001101117&#55;Цифра 7
5638070001110008&#56;Цифра 8
5739071001110019&#57;Цифра 9

Буквы

65–90, 97–122
Дес.Шестн.Восьм.ДвоичныйСимволHTMLНазвание
654110101000001A&#65;Заглавная буква A
664210201000010B&#66;Заглавная буква B
674310301000011C&#67;Заглавная буква C
684410401000100D&#68;Заглавная буква D
694510501000101E&#69;Заглавная буква E
704610601000110F&#70;Заглавная буква F
714710701000111G&#71;Заглавная буква G
724811001001000H&#72;Заглавная буква H
734911101001001I&#73;Заглавная буква I
744A11201001010J&#74;Заглавная буква J
754B11301001011K&#75;Заглавная буква K
764C11401001100L&#76;Заглавная буква L
774D11501001101M&#77;Заглавная буква M
784E11601001110N&#78;Заглавная буква N
794F11701001111O&#79;Заглавная буква O
805012001010000P&#80;Заглавная буква P
815112101010001Q&#81;Заглавная буква Q
825212201010010R&#82;Заглавная буква R
835312301010011S&#83;Заглавная буква S
845412401010100T&#84;Заглавная буква T
855512501010101U&#85;Заглавная буква U
865612601010110V&#86;Заглавная буква V
875712701010111W&#87;Заглавная буква W
885813001011000X&#88;Заглавная буква X
895913101011001Y&#89;Заглавная буква Y
905A13201011010Z&#90;Заглавная буква Z
976114101100001a&#97;Строчная буква a
986214201100010b&#98;Строчная буква b
996314301100011c&#99;Строчная буква c
1006414401100100d&#100;Строчная буква d
1016514501100101e&#101;Строчная буква e
1026614601100110f&#102;Строчная буква f
1036714701100111g&#103;Строчная буква g
1046815001101000h&#104;Строчная буква h
1056915101101001i&#105;Строчная буква i
1066A15201101010j&#106;Строчная буква j
1076B15301101011k&#107;Строчная буква k
1086C15401101100l&#108;Строчная буква l
1096D15501101101m&#109;Строчная буква m
1106E15601101110n&#110;Строчная буква n
1116F15701101111o&#111;Строчная буква o
1127016001110000p&#112;Строчная буква p
1137116101110001q&#113;Строчная буква q
1147216201110010r&#114;Строчная буква r
1157316301110011s&#115;Строчная буква s
1167416401110100t&#116;Строчная буква t
1177516501110101u&#117;Строчная буква u
1187616601110110v&#118;Строчная буква v
1197716701110111w&#119;Строчная буква w
1207817001111000x&#120;Строчная буква x
1217917101111001y&#121;Строчная буква y
1227A17201111010z&#122;Строчная буква z

FAQ

В чём разница между ASCII и UTF-8?
ASCII определяет 128 символов, пронумерованных от 0 до 127. UTF-8 — это кодировка для всего Unicode — более 150 000 символов — и она кодирует эти первые 128 одним байтом с точно теми же значениями, что и в ASCII. Поэтому любой ASCII-файл является корректным UTF-8-файлом, но обратное верно только если текст остаётся в пределах этих 128 символов.
Почему таблица заканчивается на 127?
ASCII — это 7-битный стандарт, а 2⁷ равно 128. Коды 128–255 не относятся к ASCII: они принадлежат тому 8-битному расширению, которое используется — Windows-1252, ISO-8859-1 и другим, — именно поэтому они расходятся между собой и почему текст с диакритикой так часто приходит искажённым.
Какой код ASCII у пробела?
Десятичное 32, шестнадцатеричное 20. Это печатаемый символ, хотя выглядит как ничто, поэтому он находится за пределами диапазона управляющих символов, который заканчивается на 31.
Почему DEL находится на 127, а не на 0?
Бумажная лента. Удаление символа означало пробивание всех отверстий в его позиции, а все семь пробитых битов дают 127. Удалённый символ нельзя было восстановить — отсюда и происходит современное значение.
В чём разница между CR и LF?
CR (13) возвращает печатающую головку в первый столбец; LF (10) переводит на одну строку вперёд. Unix и macOS завершают строки одним LF, Windows использует CR, за которым следует LF, и это расхождение — причина того, что файл может отображаться как одна длинная строка или с посторонними символами ^M.