Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Первые шаги в программировании: основы, Си, Objective-c


1.16

Представление символьной информации - ASCII

 Вы уже знаете, что не зависимо от того, какого типа информацию вы храните или собираетесь хранить в компьютере, все данные имеют двоичное представление, т.е. все хранится в двоичных числах.
Эти двоичные числа могут представляться в разных системах счисления:
- восьмеричной,
- десятичной,
- шестнадцатеричной...

Возникает вопрос, если числа хранятся в двоичном формате, то каким образом мы храним буквы, знаки препинания и другую информацию?
И каким образом мы их выводим на экран монитора?
Все знаки, которые вы видите на экране монитора выводятся в виде символов.
Даже сами цифры на экране монитора должны отображаться в виде символа, который соответствует тому числу, которое мы хотим отобразить.

По этому существует определенная "договоренность", что такая то последовательность битов и байтов обозначает конкретный отображаемый символ.
Такая договоренность - есть суть общий стандарт для всех. Используется так называемая КОДИРОВКА, а еще точнее - таблица символов ASCII (кодовая таблица) .
Т.е. если мы будем использовать общую систему кодирования символов (кодировку), то проблем с отображением символов у нас не будет.

ASCII (American Standard Code for Information Interchange) - американский стандартный код для обмена информацией; таблица символов, в котором каждому символу присвоены специальные коды - от 0 до 255
Эти коды и говорят как нарисовать на экране тот или иной символ.

Вы наверняка сталкивались с ситуацией, когда полученное электронное письмо в вашей почтовой программе отображается в виде каких то иероглифов или "кракозябр".
Это есть пример несоответствия кодировок: письмо было отправлено в одной кодировке, а ваша программа пытается прочесть его используя другую кодовую страницу.
Вернуть текст в читаемый вид можно будет только в том случае, если вы подберете именно ту кодовую таблицу, которая использовалась при отправке вам письма.

Нарушение кодировки также иногда случается при просмотре веб-сайтов в интернете. Ситуация точно такая же, что и с электронным письмом.

Если вы немного знаете веб программирование, то вам наверняка встречались такие понятия как ЧАРСЕТ (charset) - указание конкретной кодировки в которой отображается информация.
Их существует великое множество для разных языков.

Наиболее используемые:
- windows-1251 (Кириллица)
- KOI8-R (Кириллица)
- ISO-8859-1 (Западно-Европейская)
- и т.д.

В данных таблицах кодировок определенный диапазон чисел выделен для отображения буквенной информации, другой - для отображения цифр, другой - для псевдографики и спец символов и т.д.

Изначально кодовые таблицы состояли из 7 битов, которые могли хранить довольно ограниченное количество знаков, а именно 128
Поскольку на заре развития компьютерной технологии большее распространение компьютеры имели в США и Европе, то основным языком были английский и европейские, и алфавиты этих стран вполне нормально укладывались в размерность семи бит.

По мере распространения компьютерной техники по миру семи бит под алфавит стало не хватать, поскольку многие языки имеют отличный от латиницы алфавит: кириллица, восточные языки...
В следствии этого появился следующий стандарт использующий для кодировки 8 бит - (256 знаков)
Этого количества вполне хватает для двух алфавитов и управляющих и других спец символов.
Ярким представителем такой кодовой страницы для кириллицы является кодировка KOI8-R

Полная новость доступна на сайте www.tryobj.com


В избранное