Що таке кодування ANSI і з чим її їдять?

24 0 Новини високих технологій

Перш ніж відповідати на питання про те, що ж таке кодування ANSI Windows, відповімо спочатку на інше питання: "Що ж таке кодування взагалі?" У кожного комп'ютера, в кожній системі використовується певний набір символів, що залежить від мови, що використовується користувачем, від його професійних компетенцій та особистих уподобань.

Загальне визначення кодування

Так, в російській мові використовується 33 символу для позначення букв, в англійському – 26. Також використовується 10 цифр для рахунку (0; 1; 2; 3; 4; 5; 6; 7; 8; 9) і деякі спеціальні символи, у тому числі кома, мінус, пробіл, точка, відсоток і так далі. Кожному з цих символів за допомогою кодової таблиці присвоюється порядковий номер. Приміром, букві "A", може бути присвоєно номер 1; "Z" - 26 і так далі. Власне, номер, який представляє символ як ціле число, вважається кодом символу, а кодування - це, відповідно, набір символів у такій таблиці.

Багатство різноманітності кодових таблиць

На даний момент існує досить велика кількість кодувань і кодових таблиць, використовуваних різними фахівцями: це і ASCII, розроблена в 1963 році в Америці, і Windows-1251 зовсім недавно колишня популярною завдяки Microsoft, KOI8-R і Guobiao - і багато, багато інших, причому процес їх появи і відмирання відбувається і донині.


Серед цього величезного списку зовсім особливо тримається так звана кодування ANSI. Справа в тому, що у свій час компанія Microsoft створила цілий набір кодових сторінок:

Windows - 874



Тайський



Windows-1250



Центральноєвропейський



Windows-1251



Кириличний (всі символи російської мови + символи близьких мов)



Windows-1252



Західноєвропейський



Windows-1253



Грецький



Windows-1254



Турецький



Windows-1255



Єврейський



Windows-1256



Арабська



Windows-1257



Балтійський



Windows-1258



В'єтнамський

Всі вони отримали загальну назву таблиці кодування ANSI, або кодової сторінки ANSI. Цікавий факт: однією з перших кодових таблиць стала ASCII, в 1963 році створена American National Standards Institute (Американським національним інститутом стандартів), скорочено називалися саме ANSI.


Крім усього іншого, ця кодування і містить недруковані символи, так звані "Керуючі послідовності", або ESC, унікальні для всіх таблиць символів, часто несумісні між собою. При вмілому використанні, однак, вони дозволяли приховувати і відновлювати курсор, переводити його з одного положення в тексті на інше, встановлювати табуляцію, прати частина вікна терміналу, в якому велася робота, змінювати форматування тексту на екрані і змінювати колір (або навіть малювати і подавати звукові сигнали!). У 1976 році, до речі, це було досить непоганою підмогою для програмістів. До речі, термінал - це пристрій, потрібний для введення і виведення інформації. У ті далекі часи він представляв собою монітор і клавіатуру, приєднані до ЕОМ (електронній обчислювальній машині).

Некоректне відображення символів

На жаль, у подальшому подібна система викликала численні збої в системах, виводячи замість бажаних віршів, стрічок новин або описів улюблених комп'ютерних ігор так звані кракозябры - безглузді, нечитані набори символів. Поява цих всюдисущих помилок було викликано лише спробою відображати символи, які закодовані в одній кодовій таблиці, за допомогою іншої.
Що таке кодування ANSI і з чим її їдять?
Найчастіше з наслідками неправильного читання цієї кодування ми стикаємося в Інтернеті досі, коли наш браузер з якоїсь причини не може досить точно визначити, яка саме з Windows-**** кодувань використовується в даний момент, через вказівки веб-майстром загальної кодування ANSI або спочатку невірного кодування, наприклад, 1252 замість 1521. Нижче представлена точна таблиця кодувань.

Кирилична таблиця ANSI-кодування Windows-1251



№ П/п.



HEX



СИМВОЛ



№ П/п.



HEX



СИМВОЛ



№ П/п.



HEX



СИМВОЛ



000



00



NOP



086



56



V



171



AB



«



001



01



SOH



087



57



W



172



AC







002



02



STX



088



58



X



173



AD



003



03



ETX



089



59



Y



174



AE



®



004



04



EOT



090



5A



Z



175



AF



Ї



005



05



ENQ



091



5B



[



176



B0



°



006



06



ACK



092



5C







177



B1



±



007



07



BEL



093



5D



]



178



B2



І



008



08



BS



094



5E



^



179



B3



і



009



09



TAB



095



5F



_



180



B4



ґ



010



0A



LF



096



60



`



181



B5



µ



011



0B



VT



097



61



a



182



B6







012



0C



FF



098



62



b



183



B7



·



013



0D



CR



099



63



c



184



B8



Е



014



0E



SO



100



64



d



185



B9







015



0F



SI



101



65



e



186



BA



Є



016



10



DLE



102



66



f



187



BB



»



017



11



DC1



103



67



g



188



BC



ј



018



12



DC2



104



68



h



189



BD



Ѕ



019



13



DC3



105



69



i



190



BE



Ѕ



020



14



DC4



106



6A



j



191



BF



Ї



021



15



NAK



107



6B



k



192



C0



А



022



16



SYN



108



6C



l



193



C1



Б



023



17



ETB



109



6D



m



194



C2



У



024



18



CAN



110



6E



n



195



C3



Р



025



19



EM



111



6F



o



196



C4



Д



026



1A



SUB



112



70



p



197



C5



Е



027



1B



ESC



113



71



q



198



C6



Ж



028



1C



FS



114



72



r



199



C7



З



029



1D



GS



115



73



s



200



C8



І



030



1E



RS



116



74



t



201



C9



Ї



031



1F



US



117



75



u



202



CA



До



032



20



Пробіл



118



76



v



203



CB



Л



033



21



!



119



77



w



204



CC



М



034



22



«



120



78



x



205



CD



Н



035



23



#



121



79



y



206



CE



Про



036



24



$



122



7A



z



207



CF



П



037



25



%



123



7B



{



208



D0



Р



038



26



&



124



7C



|



209



D1



З



039



27



'



125



7D



}



210



D2



Т



040



28



(



126



7E



~



211



D3



У



041



29



)



127



7F



212



D4



Ф



042



2A



*



128



80



Ђ



213



D5



Х



043



2B



+



129



81



Ѓ



214



D6



Ц



044



2C



,



130



82



'



215



D7



Ч



045



2D







131



83



ѓ



216



D8



Ш



046



2E



.



132



84







217



D9



Щ



047



2F



/



133



85







218



DA



Ъ



048



30



0



134



86







219



DB



И



049



31



1



135



87







220



DC



Ь



050



32



2



136



88







221



DD



Е



051



33



3



137



89







222



DE



Ю



052



34



4



138



8A



© R3r3r34996.



223



DF



Я



053



35



5



139



8B



"



224



E0



а



054



36



6



140



8C



Њ



225



E1



б



055



37



7



141



8D



Ќ



226



E2



у



056



38



8



142



8E



Ћ



227



E3



р



057



39



9



143



8F



* R3r3r34996.



228



E4



д



058



3A



:



144



90



Ђ



229



E5



е



059



3B



;



145



91



'



230



E6



ж



060



3C







148



94



"



233



E9



ї



063



3F



?



149



95







234



EA



до



064



40



@



150



96







235



EB



л



065



41



A



151



97







236



EC



м



066



42



B



152



98 ?



237



ED



н



067



43



C



153



99







238



EE



про



068



44



D



154



9A



©



239



EF



п



069



45



E



155



9B



"



240



F0



р



070



46



F



156



9C



њ



241



F1



з



071



47



G



157



9D



ќ



242



F2



т



072



48



H



158



9E



ћ



243



F3



у



073



49



I



159



9F



*



244



F4



ф



074



4A



J



160



A0



245



F5



х



075



4B



K



161



A1



Ў



246



F6



ц



076



4C



L



162



A2



ў



247



F7



ч



077



4D



M



163



A3



Ј



248



F8



ш



078



4E



N



164



A4



¤



249



F9



щ



079



4F



O



165



A5



Ґ



250



FA



ъ



080



50



P



166



A6



¦



251



FB



и



081



51



Q



167



A7



§



252



FC



ь



082



52



R



168



A8



Е



253



FD



е



083



53



S



169



A9



©



254



FE



ю



084



54



T



170



AA



Є



255



FF



я



085



55



U





Більш того, в 1986 році ANSI була суттєво розширена, завдяки Яну Е. Девісу, який написав пакет The Draw, що дозволяє не просто використовувати базові, з нашої точки зору, функції, але і повноцінно (або майже повноцінно) малювати!
Що таке кодування ANSI і з чим її їдять?

Підводячи підсумки

Таким чином, можна бачити, що кодування ANSI, по суті, хоч і була досить спірним рішенням, зберігає свої позиції.
Що таке кодування ANSI і з чим її їдять?
З часом з легкої руки ентузіастів стародавній термінал ANSI перекочував навіть на телефони!