You are on page 1of 7

ЮГОЗАПАДЕН УНИВЕРСИТЕТ НЕОФИТ РИЛСКИ БЛАГОЕВГРАД

СПЕЦИАЛНОСТ: ИНФОРМАЦИОННИ СИСТЕМИ И ТЕХНОЛОГИИ

ДИСЦИПЛИНА: КОМПЮТЪРНИ АРХИТЕКТУРИ

ASCII, UNICODE & UTF-8

Изготвила:
Андрияна Алексовска,
19251421003

Декември 2020
2

ASCII
Представянето на нечисловa информация в числов вид се нарича кодиране.
Tекстовете и знаците се въвеждат в компютъра като символи. В компютъра
данните се съхраняват само като двуични числа. За това трябва да се приеме
някакъв начин на кодиране на символите в двуични числа.
Пример: английската азбука има 26 букви. Като се добавят дестте десетични
цифри плюс специалните знаци се получават около 50 знака. За кодирането им са
достатъчни 6 бита, защото 26 е 64. За да може кодираната информация да бъде
обменяна между различни компютри, този начин на кодиране е бил стандартизиран
като на всеки знак е бил присфоен точно определена двуична комбинация. Този код
е ASCII (American Standard Code Information Interchange).
В началния период на развитие на компютърните системи са използвани
различни принципи на кодиране на символна и текстова информация. Това е
създавало големи затруднения, тъй като трудно е можело да се обменя
информация между различните изчислителни машини. Поради тази причина
Американският национален институт по стандартизация (ANSI) разработва
специална кодова таблица ASCII (American Standard Code for Information
Interchange). Тази кодова таблица намери много широко разпространение, като
продължава да се използва и сега.
Когато се е разработвал този стандарт, се е смятало, че всички използвани в
изчислителните машини символи не надвишават 120 броя и могат да се кодират с
не повече от 7 двоични цифри: 27 = 128. Все пак, като допълнително подсигуряване
е прието символите да записват с 8 двоични цифри, което е позволявало да се
кодират до 256 символа. Това всъщност е и причината битовете в паметта да се
групират по 8 и да образуват байтове. Всъщност 1 байт е поле в паметта, където
може да бъде записан един символ.
ASCII определя еднозначно съответствие между двоични кодове и писмени
знаци (глифи), правейки възможно обмяната на текстова информация между
отделни цифрови устройства, както и нейното съхраняване в тези устройства.
Важно е да се отбележи, че ASCII определя съответствие между кода и

ASCII, UNICODE & UTF-8 АНДРИЯНА АЛЕКСОВСКА


3

семантичната стойност на глифа, а не негова конкретна реализация.


Компютърните шрифтове са тези които определят реализациите на глифите.
Да вземем за пример главната латинска буква A - нейният двоичен код е 0100
0001 или 65 в десетичен код. В един обикновен текстов файл в ASCII код тя ще
бъде представена именно с този код - 65. Но за да се изобрази на екрана е нужен
шрифт който от своя страна съпоставя на този код някакво изображение. Това
изображение е различно при отделните шрифтове, но смисълът който то предава
остава същия - главна латинска буква A.
ASCII е най-често използваният код, създаден в САЩ и станал световен
стандарт.

ASCII, UNICODE & UTF-8 АНДРИЯНА АЛЕКСОВСКА


4

Unicode
Повечето операционни системи и приложни програми за персонални компютри
записват текста като последователност от байтове (един байт представлява 8 бита - 256
възможни комбинации). Доскоро, най-разпространен беше стандарта, при който един
символ се кодира с един байт (за PC компютрите това е ANSI стандарта). Използването
на този стандарт е ограничение, тъй като могат да се използват само 256 символа, което
е недостатъчно при работа с много езици. Решението на проблема е в използването на
няколко кодови таблици от по 256 символа.
В съвременните операционни системи и програми се налага тенденцията за
използване на два байта за кодиране на един символ (два байта представляват 16
бита - 65536 възможни комбинации). Това дава възможност да има отделни кодове за
буквите от почти всички световни азбуки, като по този начин се преодоляват трудностите
при поддръжката на много кодови таблици. Най-разпространения стандарт за
двубайтово кодиране на символите е Unicode.
При този стандарт един символ от текста се представя с два байта, т.е. за почти
всички букви от световните азбуки има отделни кодове в диапазона от 0 до 65535.
В стандарта ASCII, тъй като има ограничение от 256 символа, се получава
препокриване на кодовете за буквите от различните азбуки. Например, буквата „Д" от
кирилската кодова таблица има код 196. В гръцката кодова таблица на код 196 отговаря
буквата „делта”, а в западноевропейската кодова таблица на същия код отговаря буквата
„А с две точки отгоре”. Тъй като кодът на символите е един и същ, кой от трите символа
ще бъде изобразен зависи от кодовата таблица на избрания шрифт. Ако шрифтът е
кирилски, ще бъде изобразена кирилската буква „Д”, ако шрифтът е гръцки, ще бъде
изобразена гръцката буква „делта” и т. н. Изборът на правилен шрифт обикновено
затруднява обработката на документи, а много често е и причина за грешки.
В стандарта Unicode всяка една буква от най-разпространените азбуки има отделен
код. В разглеждания пример, буквата „Д” има код 1044, гръцката буква „делта” има код
916, а „буквата А с две точки отгоре” има код 192. По този начин, ако в даден документ
бъде избран Unicode шрифт, ще е възможна работа с много различни символи без да е

ASCII, UNICODE & UTF-8 АНДРИЯНА АЛЕКСОВСКА


5

Unicode е разработен да реши проблемите с наличието на много съществуващи


еднобайтови набори от символи (кодировки), използвани при писане на текст на
различни езици.
Той съдържа в себе си всеки символ, използван при писане на който и да е език
(включително и много “мъртви” езици), както и други символи, използвани в
математиката и инженерните науки. Всеки един набор символи може без загуба да
бъде преобразуван към уникод.
Всеки знак или символ отговаря на определен номер в кодовата таблица. Тъй
като символите са няколко десетки хиляди и не е възможно да се представят в един
байт, по специални правила (UTF) номерата на символите се трансформират в
един, два, три или четири байта, за да могат да се ползват от компютрите.
Целта на Unicode е да интегрира всички различни схеми за кодиране, така
че объркването между компютрите да бъде възможно най-ограничено.
В наши дни стандартът на Unicode определя стойности за над 128 000 знака и
може да се види в консорциума Unicode. Има няколко кода за кодиране на символи:
 UTF-8: използва само един байт (8 бита) за криптиране на английски
символи. Може да използва масив от байтове за кодиране на други символи.
UTF-8 се използва широко в електронните системи и в Интернет.
 UTF-16: Използва два байта (16 бита) за кодиране на често използвани
символи. Ако е необходимо, допълнителни символи могат да бъдат представени
от двойка 16-битови числа.
 UTF-32: Използва четири байта (32 бита) за кодиране на символи. Става
очевидно, че с увеличения стандарт на Unicode 16-битовото число е твърде
малко, за да представя всички символи. UTF-32 е способен да представя всеки
Unicode знак като едно число.
Забележка: UTF е Unicode единица за преобразуване.

ASCII, UNICODE & UTF-8 АНДРИЯНА АЛЕКСОВСКА


6

UTF-8

На теория UNICODE е много добър. Но на практика историята е различна. Като


цяло UNICODE използва 2-байтов знак. С други думи, всеки текст използва два пъти
повече пространство, отколкото в ASCII. Това е отпадък. Символите, които изискват
UNICODE, са редки. Но има един трик: UTF-8.

Текстът в UTF-8 е прост, направен е изцяло в ASCII и когато се нуждаем от знак


UNICODE, използваме специален знак, който казва „Внимание, следващият знак е
в UNICODE“. За да бъдем по-строги обаче, отбелязваме началото на файла, който
е в UTF-8, със специални символи.

UTF-8 съчетава ASCII производителност и UNICODE обхват. Всъщност UTF-8 е


приет като стандарт за кодиране на XML файлове. Повечето актуални браузъри
също поддържат UTF-8 и автоматично го откриват в HTML страници.

ASCII, UNICODE & UTF-8 АНДРИЯНА АЛЕКСОВСКА


7

Разлики между ASCII и Unicode

Unicode ASCII

Unicode е ИТ стандартът, който


ASCII е ИТ стандарт,
кодира, представя и обработва текст
който кодира символите
Определение за компютрите,
само за електронна
телекомуникационните устройства и
комуникация.
друго оборудване.
Американският
Unicode е известен също като стандартен кодекс за
Съкращение
универсален набор от символи. обмен на информация е
пълната форма на ASCII.
ASCII представлява
Unicode представлява голям брой
определен брой знаци
знаци като букви на различни езици,
Функция като главни и малки букви
математически символи,
на английски език, цифри
исторически скриптове и т.н.
и символи.
Той използва 7 бита, за
Той използва 8-битов, 16-битов или
да представи всеки
32-битов, за да представи какъвто и
Използва символ. Това става чрез
да е символ, а ASCII е подчинен на
преобразуване на
Unicode.
символите в числа.
ASCII поддържа само 128
Unicode поддържа голям брой знаци
Заето място знака и заема по-малко
и заема повече място.
място.

ASCII, UNICODE & UTF-8 АНДРИЯНА АЛЕКСОВСКА

You might also like