ASCII — код за символи и текст: дефиниция, таблица и примери
Научете всичко за ASCII: дефиниция, пълна таблица със символи и контролни кодове, практични примери и исторически контекст — лесно и подробно за програмисти и ентусиасти.
ASCII (произнася се az-kee или ass-key, ако сте американец) е стандартна таблица със символи, използвана от компютри и електронни устройства за представяне на текст. Името идва от абревиатурата American Standard Code for Information Interchange (Американски стандартен код за обмен на информация). ASCII е разработен в началото на 60‑те години на XX в. и се базира на по‑ранни кодове, използвани от телеграфните системи; първоначалният стандарт е публикуван от Американската асоциация по стандарти (ASA/ANSI).
Стандартният ASCII е 7‑битов код, който дефинира 128 символа (стойности от 0 до 127). От тези 128 символа:
- 0–31 и 127 са контролни знаци (непечатни), използвани за управление на комуникацията и форматирането на потока от данни — например NUL, BEL, BS, TAB, LF (Line Feed), CR (Carriage Return) и т.н.;
- 32–126 са печатни символи — интервал, пунктуация, цифри и букви (на латиница): 48–57 са цифрите 0–9, 65–90 големи латински букви (A–Z), 97–122 малки латински букви (a–z).
Битове, байтове и разширения
Макар ASCII да е дефиниран като 7‑битов код, в практиката символите често се съхраняват и предават в 8‑битови байтове. Допълнителният (осми) бит е бил използван исторически като бит за четност във всеки байт, изпратен по сериен порт или модем, за откриване на грешки при шумни връзки. Друг подход е да се използва осмият бит за допълнителни символи — така възникват различни "разширени ASCII" таблици (стойности 128–255), например ISO‑8859‑1 или CP1252, които добавят символи за други езици и графика.
Примери и представяне
Типични примери за представяне на символите:
- 'A' има десетична стойност 65, шестнадесетична 0x41 и в 7‑битов двоичен вид е 1000001. Когато се съхранява в 8 бита, обикновено се записва като 01000001;
- 'B' = 66 (0x42), 'C' = 67 (0x43);
- 'a' = 97, '0' = 48;
- Интервал (space) = 32; DEL (delete) = 127.
Контролни знаци и съвременна употреба
Контролните знаци са в "лявата колона" на таблиците с ASCII и повечето вече не се използват по първоначалното си предназначение. Важно практическо значение имат всъщност няколко от тях: LF (Line Feed, код 10) и CR (Carriage Return, код 13) се използват за маркиране на край на ред — комбинацията и редът на използване се различават между операционните системи (Unix използва само LF, Windows използва CR+LF). BEL (код 7) е звук, TAB (код 9) е табулация, NUL (код 0) често служи като терминатор в низовете на C и други езици.
ASCII като формат на файлове и граници на възможностите
Когато някой говори за файл или документ в ASCII формат, обикновено има предвид, че той е в обикновен текст — т.е. съдържа само символи от базовия ASCII набор (често кодирани в 7 или 8 бита). ASCII не включва истински контролни знаци за визуално форматиране като удебелен шрифт или курсив; такива ефекти се постигат от по‑високо ниво (форматирани документи, HTML, RTF и др.) или чрез специални кодове/терминални последователности (например ANSI escape кодове за цветове и стилове в терминали).
ASCII и Unicode
ASCII покрива само латинската азбука без диакритични знаци и не съдържа символи за повечето световни езици. Затова през 90‑те години възникна Unicode — широка кодова таблица, която включва всички символи от ASCII като първите 128 кодови точки (съвместимост назад) и добавя хиляди други символи и писмени системи. Днес в повечето приложения и уеб страници предпочитаните кодировки са UTF‑8 (Unicode), което позволява едновременно поддръжка на ASCII и на всички останали символи.
Практически бележки
- За да разберете ASCII стойностите на символи в програмиране, често се използват функции/операции за преобразуване между символ и число (например в C: (int)'A' → 65).
- При обмен на данни по стари връзки или хардуер осмият бит и битът за четност са имали значение; при съвременни мрежи основният фокус е на байтовите кодировки (UTF‑8, ISO‑8859‑1 и др.).
- ASCII остава фундаментален стандарт — много протоколи (HTTP, SMTP, FTP и др.) и формати използват ASCII символи за ключови команди и заглавки.
В обобщение: ASCII е прост и устойчив стандарт за представяне на основния набор от текстови символи в компютрите. Въпреки ограничената си 7‑битова природа, той е основата за по‑късните, по‑богати кодировки и до днес остава важна част от дигиталната инфраструктура.

95-те графични ASCII символа с номера от 32 до 126 (десетично число)
Разширен ASCII
ASCII няма диакритични знаци (знаци, които се добавят към буквата, като точките (умлаути) над гласните в немския език или тилдата (~) над "n" за "ñ", използвана в испанския език). Той е предназначен само за английски език и не работи добре за повечето други езици. Някои английски думи, заимствани от други езици, също използват тези знаци, например resumé (вж. Приложение:Английски думи с диакритични знаци).
Това доведе до използването в някои системи на 8 бита (пълен байт) вместо на 7 бита. Правилното наименование на системите, които използват 8 бита, се нарича разширен ASCII. Осемте бита позволяват да се използват 256 символа. Първите 128 символа трябва да са същите като при ASCII, а останалите обикновено се използват за буквени знаци с ударения, например като É, È, Î и Ü. Това решава проблема за езиците, които се основават на латинската азбука, въпреки че не всички разширени ASCII системи са еднакви. Други азбуки, като гръцката азбука, кирилицата, се нуждаят от различен набор от знаци. А някои системи, като тези, използващи китайски йероглифи, все още не работят, тъй като използват хиляди йероглифи. Затова е създаден Unicode, за да има една обща система за всички езици.
Стандартният ASCII все още се използва често, особено в компютърния софтуер и HTML файловете. До 2010 г. това е стандартът за URL адресите. Често даден уебсайт, който има полета за въвеждане на текст, приема само ASCII текст. Всички специални обозначения за удебелен или центриран текст и т.н. ще се показват неправилно.

Въпроси и отговори
В: Какво е ASCII?
О: ASCII е таблица на символите за компютри, която използва двоичен код за обработка на текст, използващ английската азбука, цифри и други общи символи.
В: Какво означава ASCII?
О: ASCII е съкращение от American Standard Code for Information Interchange (Американски стандартен код за обмен на информация).
В: Кога е разработен ASCII?
О: ASCII е разработен през 60-те години на миналия век.
В: Колко символа включва кодът?
О: Кодът включва дефиниции за 128 символа, на които са присвоени номера от 0 до 127.
В: Колко бита са необходими за представяне на един ASCII символ?
О: За представянето на един ASCII символ са необходими 7 двоични цифри (бита).
В: Компютърният файл ASCII използва ли един байт за символ?
О: Да, ASCII компютърният файл използва един байт за символ, с 8 бита на байт.
В: Стандартът ASCII все още ли се използва често днес? О: Да, стандартът ASCI се използва често и днес, особено в компютърния софтуер и HTML файловете.
обискирам