ASCII (American Standard Code for Information Interchange) — это стандарт кодирования символов, разработанный в начале 1960-х. Он определяет числовые коды (от 0 до 127) для управления устройствами (непечатные символы) и отображаемых знаков (буквы латинского алфавита, цифры, пунктуация). Расширение ASCII до 8 бит (0–255) добавляет дополнительные графические символы и буквенные знаки для поддержки европейских языков.
Ниже представлена таблица, символы которой вы можете скопировать, кликнув на ячейку:
DEC OCT HEX BIN Символ HTML-код HTML-имя 0 0 0 00000000 � 1 1 1 00000001  2 2 2 00000010  3 3 3 00000011  4 4 4 00000100  5 5 5 00000101  6 6 6 00000110  7 7 7 00000111  8 10 8 00001000  9 11 9 00001001 	 10 12 A 00001010 11 13 B 00001011  12 14 C 00001100  13 15 D 00001101 14 16 E 00001110  15 17 F 00001111  16 20 10 00010000  17 21 11 00010001  18 22 12 00010010  19 23 13 00010011  20 24 14 00010100  21 25 15 00010101  22 26 16 00010110  23 27 17 00010111  24 30 18 00011000  25 31 19 00011001  26 32 1A 00011010  27 33 1B 00011011  28 34 1C 00011100  29 35 1D 00011101  30 36 1E 00011110  31 37 1F 00011111  32 40 20 00100000   33 41 21 00100001 ! ! ! 34 42 22 00100010 " " " 35 43 23 00100011 # # 36 44 24 00100100 $ $ 37 45 25 00100101 % % 38 46 26 00100110 & & & 39 47 27 00100111 ' ' 40 50 28 00101000 ( ( 41 51 29 00101001 ) ) 42 52 2A 00101010 * * 43 53 2B 00101011 + + 44 54 2C 00101100 , , 45 55 2D 00101101 - - 46 56 2E 00101110 . . 47 57 2F 00101111 / / 48 60 30 00110000 0 0 49 61 31 00110001 1 1 50 62 32 00110010 2 2 51 63 33 00110011 3 3 52 64 34 00110100 4 4 53 65 35 00110101 5 5 54 66 36 00110110 6 6 55 67 37 00110111 7 7 56 70 38 00111000 8 8 57 71 39 00111001 9 9 58 72 3A 00111010 : : 59 73 3B 00111011 ; ; 60 74 3C 00111100 < < < 61 75 3D 00111101 = = 62 76 3E 00111110 > > > 63 77 3F 00111111 ? ? 64 100 40 01000000 @ @ 65 101 41 01000001 A A 66 102 42 01000010 B B 67 103 43 01000011 C C 68 104 44 01000100 D D 69 105 45 01000101 E E 70 106 46 01000110 F F 71 107 47 01000111 G G 72 110 48 01001000 H H 73 111 49 01001001 I I 74 112 4A 01001010 J J 75 113 4B 01001011 K K 76 114 4C 01001100 L L 77 115 4D 01001101 M M 78 116 4E 01001110 N N 79 117 4F 01001111 O O 80 120 50 01010000 P P 81 121 51 01010001 Q Q 82 122 52 01010010 R R 83 123 53 01010011 S S 84 124 54 01010100 T T 85 125 55 01010101 U U 86 126 56 01010110 V V 87 127 57 01010111 W W 88 130 58 01011000 X X 89 131 59 01011001 Y Y 90 132 5A 01011010 Z Z 91 133 5B 01011011 [ [ 92 134 5C 01011100 \ \ 93 135 5D 01011101 ] ] 94 136 5E 01011110 ^ ^ 95 137 5F 01011111 _ _ 96 140 60 01100000 ` ` 97 141 61 01100001 a a 98 142 62 01100010 b b 99 143 63 01100011 c c 100 144 64 01100100 d d 101 145 65 01100101 e e 102 146 66 01100110 f f 103 147 67 01100111 g g 104 150 68 01101000 h h 105 151 69 01101001 i i 106 152 6A 01101010 j j 107 153 6B 01101011 k k 108 154 6C 01101100 l l 109 155 6D 01101101 m m 110 156 6E 01101110 n n 111 157 6F 01101111 o o 112 160 70 01110000 p p 113 161 71 01110001 q q 114 162 72 01110010 r r 115 163 73 01110011 s s 116 164 74 01110100 t t 117 165 75 01110101 u u 118 166 76 01110110 v v 119 167 77 01110111 w w 120 170 78 01111000 x x 121 171 79 01111001 y y 122 172 7A 01111010 z z 123 173 7B 01111011 { { 124 174 7C 01111100 | | 125 175 7D 01111101 } } 126 176 7E 01111110 ~ ~ 127 177 7F 01111111  128 200 80 10000000 € 129 201 81 10000001  130 202 82 10000010 ‚ 131 203 83 10000011 ƒ 132 204 84 10000100 „ 133 205 85 10000101 … 134 206 86 10000110 † 135 207 87 10000111 ‡ 136 210 88 10001000 ˆ 137 211 89 10001001 ‰ 138 212 8A 10001010 Š 139 213 8B 10001011 ‹ 140 214 8C 10001100 Œ 141 215 8D 10001101  142 216 8E 10001110 Ž 143 217 8F 10001111  144 220 90 10010000  145 221 91 10010001 ‘ 146 222 92 10010010 ’ 147 223 93 10010011 “ 148 224 94 10010100 ” 149 225 95 10010101 • 150 226 96 10010110 – 151 227 97 10010111 — 152 230 98 10011000 ˜ 153 231 99 10011001 ™ 154 232 9A 10011010 š 155 233 9B 10011011 › 156 234 9C 10011100 œ 157 235 9D 10011101  158 236 9E 10011110 ž 159 237 9F 10011111 Ÿ 160 240 A0 10100000   161 241 A1 10100001 ¡ 162 242 A2 10100010 ¢ 163 243 A3 10100011 £ 164 244 A4 10100100 ¤ 165 245 A5 10100101 ¥ 166 246 A6 10100110 ¦ 167 247 A7 10100111 § 168 250 A8 10101000 ¨ 169 251 A9 10101001 © 170 252 AA 10101010 ª 171 253 AB 10101011 « 172 254 AC 10101100 ¬ 173 255 AD 10101101 ­ 174 256 AE 10101110 ® 175 257 AF 10101111 ¯ 176 260 B0 10110000 ° 177 261 B1 10110001 ± 178 262 B2 10110010 ² 179 263 B3 10110011 ³ 180 264 B4 10110100 ´ 181 265 B5 10110101 µ 182 266 B6 10110110 ¶ 183 267 B7 10110111 · 184 270 B8 10111000 ¸ 185 271 B9 10111001 ¹ 186 272 BA 10111010 º 187 273 BB 10111011 » 188 274 BC 10111100 ¼ 189 275 BD 10111101 ½ 190 276 BE 10111110 ¾ 191 277 BF 10111111 ¿ 192 300 C0 11000000 À 193 301 C1 11000001 Á 194 302 C2 11000010  195 303 C3 11000011 à 196 304 C4 11000100 Ä 197 305 C5 11000101 Å 198 306 C6 11000110 Æ 199 307 C7 11000111 Ç 200 310 C8 11001000 È 201 311 C9 11001001 É 202 312 CA 11001010 Ê 203 313 CB 11001011 Ë 204 314 CC 11001100 Ì 205 315 CD 11001101 Í 206 316 CE 11001110 Î 207 317 CF 11001111 Ï 208 320 D0 11010000 Ð 209 321 D1 11010001 Ñ 210 322 D2 11010010 Ò 211 323 D3 11010011 Ó 212 324 D4 11010100 Ô 213 325 D5 11010101 Õ 214 326 D6 11010110 Ö 215 327 D7 11010111 × 216 330 D8 11011000 Ø 217 331 D9 11011001 Ù 218 332 DA 11011010 Ú 219 333 DB 11011011 Û 220 334 DC 11011100 Ü 221 335 DD 11011101 Ý 222 336 DE 11011110 Þ 223 337 DF 11011111 ß 224 340 E0 11100000 à 225 341 E1 11100001 á 226 342 E2 11100010 â 227 343 E3 11100011 ã 228 344 E4 11100100 ä 229 345 E5 11100101 å 230 346 E6 11100110 æ 231 347 E7 11100111 ç 232 350 E8 11101000 è 233 351 E9 11101001 é 234 352 EA 11101010 ê 235 353 EB 11101011 ë 236 354 EC 11101100 ì 237 355 ED 11101101 í 238 356 EE 11101110 î 239 357 EF 11101111 ï 240 360 F0 11110000 ð 241 361 F1 11110001 ñ 242 362 F2 11110010 ò 243 363 F3 11110011 ó 244 364 F4 11110100 ô 245 365 F5 11110101 õ 246 366 F6 11110110 ö 247 367 F7 11110111 ÷ 248 370 F8 11111000 ø 249 371 F9 11111001 ù 250 372 FA 11111010 ú 251 373 FB 11111011 û 252 374 FC 11111100 ü 253 375 FD 11111101 ý 254 376 FE 11111110 þ 255 377 FF 11111111 ÿ
Наша таблица ASCII охватывает полный диапазон кодов от 0 до 255, снабжена всеми привычными представлениями: десятичным, восьмеричным, шестнадцатеричным и бинарным. Заголовки столбцов переведены на русский язык, а для непечатных символов и HTML-имён предусмотрены понятные обозначения. Благодаря аккуратной разметке в виде стандартной HTML-таблицы вы получаете однородный моноширинный шрифт, чёткую градацию ячеек и возможность тонко настраивать внешний вид через CSS.
Особый плюс — встроенный функционал «клик-ту-копировать»: по одному нажатию мыши любой элемент таблицы (число, символ или код) попадает в буфер обмена. Это не просто красиво, но и очень удобно для разработчиков и верстальщиков: больше не надо вручную выделять и копировать нужный код.
ASCII – от первых компьютеров до основ современного интернета
Представьте мир, где каждый компьютер говорит на своем уникальном языке. Отправить текстовый файл с одной машины на другую становится задачей на грани фантастики, ведь символы, которые вы видите на экране, могут превратиться в бессмысленный набор знаков или вовсе отсутствовать. Именно с такой проблемой столкнулись пионеры компьютерной эпохи. И ответом стал стандарт, который, несмотря на свою кажущуюся простоту, заложил основу для обмена текстовой информацией по всему миру – ASCII.
В этой статье мы погрузимся в мир ASCII: узнаем, что это такое, как он устроен, почему был необходим, каковы его ограничения и почему, даже в эру Unicode, понимание ASCII по-прежнему важно для каждого, кто интересуется компьютерами и программированием.
Разработанный в 1960-х годах, ASCII стал первым широко принятым стандартом кодирования. До его появления различные производители компьютеров использовали собственные, несовместимые между собой системы кодирования символов. ASCII положил конец этому хаосу, обеспечив единый язык для обмена текстом.
Как устроен ASCII – 7 бит, 128 символов
Ключевая особенность оригинального ASCII – это его 7-битная структура. Это означает, что для представления каждого символа используется всего 7 бит информации. С помощью 7 бит можно закодировать 27=128 различных значений (числа от 0 до 127).
Эти 128 значений были распределены следующим образом:
- Управляющие символы (0-31): Эти символы не имеют графического представления и используются для управления устройствами (например, принтерами или терминалами) или форматирования текста. К ним относятся перевод строки (Line Feed, LF), возврат каретки (Carriage Return, CR), табуляция (Tab), Escape и другие.
- Печатные символы (32-127): Эта часть включает все символы, которые мы привыкли видеть на экране или бумаге:
- Пробел (символ 32)
- Знаки препинания и специальные символы (@, #, $, %, &, *, и т.д.)
- Цифры от 0 до 9
- Заглавные буквы латинского алфавита (A-Z)
- Строчные буквы латинского алфавита (a-z)
Таблица ASCII выглядит как простое соответствие: например, число 65 соответствует заглавной букве ‘A’, 97 — строчной ‘a’, а 48 — цифре ‘0’.
Почему ASCII был революцией
До ASCII обмен данными между компьютерами разных производителей был серьезной проблемой. Текст, набранный на одной машине, мог отображаться как нечитаемая последовательность символов на другой, потому что “код” для буквы ‘А’ мог быть разным. ASCII предоставил универсальную карту: если компьютер получает байт со значением 65, он знает, что должен отобразить ‘A’, независимо от того, кто его произвел.
Это стало критически важным для развития:
- Телекоммуникаций: Позволило передавать текст по телефонным линиям и другим каналам связи.
- Программирования: Упростило написание программ, работающих с текстом, так как программисты могли полагаться на стандартное представление символов.
- Операционных систем: Позволило создавать файловые системы и инструменты, единообразно работающие с текстовыми файлами.
Ограничения 7 бит – начало новой эры
ASCII был разработан в США и ориентирован прежде всего на английский язык. Его 128 символов были достаточны для английского алфавита, цифр и основных знаков препинания. Однако что делать с буквами с диакритическими знаками (например, é, ü, ñ)? Что делать с буквами из других алфавитов – кириллицей, греческим, арабским? Что делать с иероглифами?
7-битного пространства ASCII было катастрофически мало для представления символов всех языков мира. Это ограничение привело к появлению:
- Расширенных ASCII (8-битных кодировок): Производители и организации начали использовать дополнительный 8-й бит (который в оригинальном ASCII всегда был 0) для кодирования еще 128 символов (значения 128-255). Однако не было единого стандарта, и разные кодировки использовали это пространство по-разному (например, кодировка CP866 для русского языка в DOS, или различные кодовые страницы Windows, или ISO 8859-x серии). Это снова создало проблему “кракозябр”, когда текст, созданный в одной 8-битной кодировке, открывался в другой.
- Необходимости универсального стандарта: Стало очевидно, что нужно гораздо больше, чем 256 символов. Миру требовалась кодировка, способная вместить символы всех языков, а также математические символы, эмодзи и многое другое.
От ASCII к Unicode – глобализация текста
Ограничения ASCII и хаос 8-битных кодировок привели к созданию Unicode. Unicode – это не просто кодировка, это гигантский стандарт, целью которого является присвоить уникальный номер (кодовую точку) каждому символу каждого языка в мире, а также множеству других знаков. Unicode может кодировать более миллиона символов.
UTF-8 стал наиболее распространенным способом кодирования символов Unicode. Одно из его ключевых преимуществ – обратная совместимость с ASCII: первые 128 символов UTF-8 (значения от 0 до 127) точно такие же, как и в ASCII. Это означает, что обычный англоязычный текст, закодированный в ASCII, является валидным текстом в UTF-8.
Хотя Unicode и UTF-8 сегодня доминируют в мире цифрового текста (интернет, операционные системы, современные приложения), роль ASCII не утрачена.
Актуальность ASCII сегодня – основа и фундамент
Почему же мы продолжаем говорить об ASCII в 2024 году?
- Фундамент кодирования: Понимание ASCII – это первый шаг к пониманию того, как компьютеры работают с текстом на фундаментальном уровне. Это базис, на котором строятся более сложные системы, такие как Unicode.
- Протоколы и форматы: Многие старые, но все еще используемые сетевые протоколы (например, части HTTP, SMTP) и форматы файлов (.txt) изначально строились на основе ASCII. Хотя они и эволюционировали для поддержки UTF-8, основы ASCII там прочно укоренились.
- Программирование: При работе с низкоуровневыми операциями с файлами или сетевыми данными программисты часто сталкиваются с необходимостью понимания байтового представления символов, начиная именно с ASCII.
- Простота и эффективность: Для простых англоязычных текстов ASCII (или его UTF-8 эквивалент для первых 128 символов) остается самым эффективным способом хранения и передачи данных.
ASCII – это не просто старый стандарт кодирования. Это веха в истории развития компьютерных технологий, которая решила насущную проблему совместимости и заложила фундамент для обмена текстовой информацией. Хотя для глобального общения и поддержки всех языков мира ему на смену пришли Unicode и UTF-8, знание и понимание принципов ASCII остается важной частью цифровой грамотности и неотъемлемым элементом базовых знаний в области информационных технологий. От скромных 7 бит до миллионов символов Unicode – путь развития кодирования символов продолжается, но без ASCII этот путь был бы невозможен.