🔧Toolify

Таблица ASCII — десятичная, hex, двоичная и восьмеричная

Просматривайте все 128 кодов ASCII (0–127) с их представлениями в десятичной, шестнадцатеричной, восьмеричной и двоичной системах счисления. Управляющие символы (0–31, 127) выделены и подписаны стандартными аббревиатурами и полными названиями. Фильтруйте для отображения только печатных символов или только управляющих кодов, ищите по десятичному числу, hex-значению или символу.

ДесHexСимволОписание
00x00NULNUL — Null
10x01SOHSOH — Start of Heading
20x02STXSTX — Start of Text
30x03ETXETX — End of Text
40x04EOTEOT — End of Transmission
50x05ENQENQ — Enquiry
60x06ACKACK — Acknowledge
70x07BELBEL — Bell
80x08BSBS — Backspace
90x09HTHT — Horizontal Tab
100x0ALFLF — Line Feed
110x0BVTVT — Vertical Tab
120x0CFFFF — Form Feed
130x0DCRCR — Carriage Return
140x0ESOSO — Shift Out
150x0FSISI — Shift In
160x10DLEDLE — Data Link Escape
170x11DC1DC1 — Device Control 1 (XON)
180x12DC2DC2 — Device Control 2
190x13DC3DC3 — Device Control 3 (XOFF)
200x14DC4DC4 — Device Control 4
210x15NAKNAK — Negative Acknowledge
220x16SYNSYN — Synchronous Idle
230x17ETBETB — End of Transmission Block
240x18CANCAN — Cancel
250x19EMEM — End of Medium
260x1ASUBSUB — Substitute
270x1BESCESC — Escape
280x1CFSFS — File Separator
290x1DGSGS — Group Separator
300x1ERSRS — Record Separator
310x1FUSUS — Unit Separator
320x20 SP — Space
330x21!
340x22"
350x23#
360x24$
370x25%
380x26&
390x27'
400x28(
410x29)
420x2A*
430x2B+
440x2C,
450x2D-
460x2E.
470x2F/
480x300
490x311
500x322
510x333
520x344
530x355
540x366
550x377
560x388
570x399
580x3A:
590x3B;
600x3C<
610x3D=
620x3E>
630x3F?
640x40@
650x41A
660x42B
670x43C
680x44D
690x45E
700x46F
710x47G
720x48H
730x49I
740x4AJ
750x4BK
760x4CL
770x4DM
780x4EN
790x4FO
800x50P
810x51Q
820x52R
830x53S
840x54T
850x55U
860x56V
870x57W
880x58X
890x59Y
900x5AZ
910x5B[
920x5C\
930x5D]
940x5E^
950x5F_
960x60`
970x61a
980x62b
990x63c
1000x64d
1010x65e
1020x66f
1030x67g
1040x68h
1050x69i
1060x6Aj
1070x6Bk
1080x6Cl
1090x6Dm
1100x6En
1110x6Fo
1120x70p
1130x71q
1140x72r
1150x73s
1160x74t
1170x75u
1180x76v
1190x77w
1200x78x
1210x79y
1220x7Az
1230x7B{
1240x7C|
1250x7D}
1260x7E~
1270x7FDELDEL — Delete

Показано 128 из 128 кодов ASCII

Как это работает

Что такое ASCII?

ASCII (American Standard Code for Information Interchange) — стандарт кодирования символов, впервые опубликованный в 1963 году. Он определяет 128 символов: 33 непечатаемых управляющих символа (коды 0–31 и 127) и 95 печатаемых символов (коды 32–126), включая прописные и строчные буквы английского алфавита, цифры 0–9 и распространённые знаки препинания. ASCII стал основой практически всех современных текстовых кодировок, в том числе UTF-8, обратно совместимого с ASCII для первых 128 кодовых точек.

Каждому ASCII-символу присвоено 7-битное целочисленное значение — именно поэтому таблица заканчивается на 127 (2⁷ − 1). При хранении в 8-битном байте старший бит для стандартного ASCII, как правило, равен 0. Расширенный диапазон ASCII (128–255) не стандартизирован исходной спецификацией и различается в зависимости от кодовой страницы — ISO 8859-1, Windows-1252 и аналогичные кодировки определяют разные наборы символов для старшей половины байта.

Управляющие символы (0–31 и 127)

Первые 32 кода ASCII и код 127 — непечатаемые управляющие символы, унаследованные от телетайпных соглашений. Большинство из них устарело в современных вычислениях, однако некоторые по-прежнему важны: код 9 (HT, горизонтальная табуляция), код 10 (LF, перевод строки в Unix/Linux), код 13 (CR, возврат каретки, используется в Windows-окончаниях строк как CR+LF), код 27 (ESC, Escape, применяется в управляющих последовательностях терминала) и код 127 (DEL). Эти символы не отображаются в виде видимых глифов.

В Unix-подобных системах управляющие символы можно вводить в терминале, удерживая Ctrl и нажимая соответствующую букву: Ctrl+A = SOH (1), Ctrl+C = ETX (3, отправляет сигнал прерывания), Ctrl+D = EOT (4, сигнализирует о конце ввода), Ctrl+J = LF (10), Ctrl+M = CR (13), Ctrl+Z = SUB (26, приостанавливает процесс в Unix). Понимание этих кодов необходимо для низкоуровневого ввода-вывода, управляющих последовательностей терминала и реализации сетевых протоколов.

ASCII в программировании и веб-разработке

В JavaScript код ASCII символа можно получить с помощью charCodeAt(0): 'A'.charCodeAt(0) возвращает 65. Для обратного преобразования String.fromCharCode(65) возвращает 'A'. В Python ord('A') возвращает 65, а chr(65) возвращает 'A'. В C значения char являются целыми числами и могут использоваться непосредственно в арифметических выражениях: 'A' + 1 равно 'B'.

Значения ASCII лежат в основе многих распространённых паттернов программирования. Разница между прописными и строчными буквами всегда равна 32: 'a' (97) = 'A' (65) + 32. Цифры 0–9 занимают коды 48–57, поэтому для получения числового значения цифрового символа нужно вычесть из его ASCII-кода число 48. URL-кодирование представляет символы, небезопасные для URL, в виде %XX, где XX — hex-код ASCII, что делает эту таблицу незаменимой при отладке URL-закодированных строк и HTTP-заголовков.

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

Какой ASCII-код у клавиши Enter / символа новой строки?

Символ новой строки (перевод строки) — это ASCII-код 10 (0x0A, LF). В Unix/Linux/macOS новая строка обозначается только LF. В Windows — CR+LF (коды 13 и 10, то есть 0x0D 0x0A). Символ возврата каретки — код 13 (0x0D, CR). При написании кроссплатформенного кода обработки текста всегда обрабатывайте оба типа окончания строк: LF и CR+LF.

Какой ASCII-код у пробела?

Пробел — это ASCII-код 32 (0x20, SP). Это первый печатный символ ASCII. Неразрывный пробел (используемый в HTML как &nbsp;) не является частью стандартного 7-битного ASCII — это код 160 (0xA0) в ISO 8859-1, в UTF-8 он кодируется двумя байтами: 0xC2 0xA0.

В чём разница между ASCII, UTF-8 и Unicode?

ASCII определяет 128 символов с 7-битными кодами. Unicode — универсальный стандарт, определяющий более 140 000 символов с кодовыми точками до U+10FFFF. UTF-8 — кодировка Unicode с переменной шириной: символы ASCII (0–127) кодируются одним байтом, что обеспечивает обратную совместимость с ASCII. Символы выше 127 занимают в UTF-8 от 2 до 4 байт. Современные текстовые системы используют UTF-8 или UTF-16, однако ASCII по-прежнему важен для заголовков протоколов, форматов файлов и устаревших систем.

Как получить ASCII-код символа в JavaScript?

Используйте charCodeAt(0): 'A'.charCodeAt(0) возвращает 65. Для кодовых точек Unicode выше 65535 используйте codePointAt(0). Для преобразования кода обратно в символ: String.fromCharCode(65) возвращает 'A'. Для полной поддержки Unicode: String.fromCodePoint(128512) возвращает эмодзи 😀.

Что делает ASCII-код 0 (NUL)?

NUL (код 0) — нулевой символ. В C и многих других языках он используется как терминатор строки: строка «Hello» хранится в памяти в виде байтов 72, 101, 108, 108, 111, 0. В базах данных и форматах файлов NUL может встречаться как разделитель полей или байт заполнения. В большинстве текстовых редакторов и терминалов NUL невидим и игнорируется, однако может вызывать проблемы при чтении двоичных файлов как текстовых.

Что такое символ Escape (ASCII 27)?

ESC (код 27, 0x1B) — символ Escape. Он открывает управляющие последовательности ANSI/VT100, которые управляют цветами терминала и перемещением курсора. Например, последовательность ESC[31m меняет цвет текста в терминале на красный. Во многих приложениях нажатие клавиши Escape отправляет именно этот символ. Он также используется в различных форматах данных и коммуникационных протоколах.

Почему ASCII-код прописной буквы A равен 65, а строчной a — 97?

Таблица ASCII была разработана так, что прописные буквы (A=65, B=66, …, Z=90) и строчные (a=97, b=98, …, z=122) отличаются ровно на 32. Это позволяет переключаться между регистрами одним сложением или вычитанием. Для преобразования прописной буквы в строчную: прибавьте 32 (или установите бит 5). Для обратного преобразования: вычтите 32 (или сбросьте бит 5). Именно поэтому побитовое преобразование регистра работает в C: char lower = upper | 0x20.

В чём разница между CR, LF и CRLF?

CR (Carriage Return, код 13) и LF (Line Feed, код 10) берут начало из соглашений пишущих машинок и телетайпов. CR перемещает печатающую головку в начало строки; LF переводит на следующую строку. Unix/Linux использует только LF в качестве символа новой строки. Windows использует CR+LF (оба вместе). Классический Mac OS (до OS X) использовал только CR. Большинство современных парсеров обрабатывают все три варианта, однако смешение окончаний строк в исходных файлах вызывает проблемы при сравнении версий и в некоторых текстовых процессорах.

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

Обновлено:

Попробуйте наши ИИ-промпты →