русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2015-06-12; просмотров: 902; Нарушение авторских прав


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

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

По этому существует определенная "договоренность", что такая то последовательность битов и байтов обозначает конкретный отображаемый символ.
Такая договоренность - есть суть общий стандарт для всех. Используется так называемаяКОДИРОВКА, а еще точнее - таблица символов 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. Это позволило значительно расширить диапазон хранимых кодов для символов.

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


 



<== предыдущая лекция | следующая лекция ==>
Деление двоичных чисел столбиком | Типы программирования. Часть 1. Структурное программирование. Циклы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.706 сек.