Добро пожаловать в раздел "Основы программирования"

сайта "Try Objective-c - программирование для начинающих"!

  Здесь простым и доступным языком представлен материал по основам программирования.

  Если вы никогда раньше не программировали, то приступать к изучению абсолютно любого языка программирования следует именно с данных основ программирования - в противном случае понимание многих вещей в дальнейшем будет довольно затруднительно.

  Сам процесс обучения программированию довольно трудоемок, но если у вас есть цель - то у вас все получится!

  Заучивать весь представленный материал нет необходимости. Главное - чтобы вы понимали саму суть здесь изложенного.

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

Категория:

Информация к новости
  • Просмотров: 6222
  • Автор: Midav
  • Дата: 4-10-2012, 00:05
4-10-2012, 00:05

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

KOI8-R - была разработана советскими разработчиками.
Компьютеры же которые поступали на наш рынок, с операционной системой Windows, комплектовались кодовой таблицей windows-1251 и эти кодировки оказались несовместимыми между собой из-за несовпадения кодов.

Но вот если вы хотите отобразить на экране сразу несколько алфавитов, то это уже не получится реализовать.
В результате этого, следующей модификации стандарта была принята универсальная кодировка Юникод (unicod) - специальный способ кодирования который дает инструкции как производить кодирование символьной информации..
Юникод существует в виде однобайтного и двухбайтного - UTF-8 и UTF-16. Это позволило значительно расширить диапазон хранимых кодов для символов.

- при помощи одного байта кодируются управляющие символы и знаки английского и европейского алфавита
- при помощи двух байт кодируются кириллица и дополнительные символы
- при помощи трех символов - кодируются арабские азбуки и иероглифы

Вы можете скачать кодовую таблицу ASCII для Windows-1251 - ascii.pdf [164.52 Kb] (cкачиваний: 9)

Метки к статье: ASCII, кодировка, charset

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Вставка ссылкиВставка защищенной ссылки Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении: *