СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Представление данных в компьютере

Категория: Информатика

Нажмите, чтобы узнать подробности

Чтобы обеспечить хранение и передачу информации в электронном виде, нужно научиться «записывать» данные, составляющую эту информацию, на языке, понятном компьютеру. Моделям представления данных в компьютере 

Просмотр содержимого документа
«Представление данных в компьютере»

ПРЕДСТАВЛЕНИЕ ДАННЫХ В КОМПЬЮТЕРЕ


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

Вы узнали, что электронное хранение и передача информации обладает рядом преимуществ, в частности, позволяет автоматизировать процессы поиска, передачи, обработки информации с помощью компьютерных средств и процессы управления в кибернетических системах. Но чтобы обеспечить хранение и передачу информации в электронном виде, нужно научиться «записывать» данные, составляющую эту информацию, на языке, понятном компьютеру. Моделям представления данных в компьютере и посвящена данная глава.


§ 2.1 Кодирование


ПОНЯТЬ


В параграфе, посвященном передаче информации, неоднократно встречалось слово «кодирование». Этот процесс столь же важен для информационного взаимодействия и функционирования кибернетических систем, как и передача, хранение, обработка информации. По сути это – один из видов преобразования информации, способ сделать её «доступной» для разных каналов связи, для получателей информации, «понимающих» различных языки, для многообразных систем хранения информации.

Современные компьютеры позволяют человеку работать со всеми привычными для него формами представления информации.

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

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

Алфавит, состоящий всего из двух знаков, называют двоичным алфавитом. В информатике знаки этого алфавита условно обозначают 0 и 1 (в некоторых случаях их интерпретируют как «истина» - «ложь» или «есть сигнал» - «нет сигнала»).

Способ записи данных с помощью двоичного алфавита называют двоичным кодированием.

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

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

Пример

На уроках Вы часто записываете что-то под диктовку учителя. Это – один из примеров кодирования. Звуки (сигналы) вы преобразуете в буквы (знаки). То же происходит при нотной записи музыки.

При чтении вслух знаки (буквы) преобразуются в сигналы (звуки).

При переводе текстов с одного языка на другой также происходит кодирования. Здесь уже знаки одного алфавита (например, буквы кириллицы) заменяются на знаки другого алфавита (например, латинские буквы или китайские иероглифы).

Рисунок нотной записи

Во всех рассмотренных случаях кодирование заключается в преобразовании по определённым правилам одного набора знаков (сигналов) в другой набор знаков (сигналов).

Правило, в соответствии с которым производится преобразование, называют кодом.

Заметим, что в русском языке кодом также называют и то сообщение, которое получилось в результате кодирования - результат кодирования.

Примечание. Теория кодирования разрабатывалась в рамках теории связи. Она давно вышла за рамки этой научной области, но традиционно принято говорить «кодирование сообщения» вместо «кодирование информации». Мы тоже будем придерживаться этой терминологии, но под сообщением будем понимать не только письменный текст, но любой информационный объект, который хранится, передаётся, обрабатывается с помощью технических средств (рисунки, записи базы данных, музыкальные фрагменты и т.п.).

Одно и то же сообщение можно закодировать по разным правилам – различными кодами. Выбор кода (правила преобразования) зависит от человека и той задачи, решение которой требует кодирования сообщений.

Пример

Одну и ту же книгу можно перевести на множество языков, соблюдая каждый раз правила синтаксиса конкретного языка.

Слова мы обычно записываем с помощью букв, но можно представить их картинками-ребусами или специальными знаками.

- слово «код» представленное ребусом.

Упорядоченный набор знаков, используемый для кодирования сообщений, называется алфавитом.

Вам хорошо известны: алфавит русского языка (кириллица), алфавит английского, французского и немецкого языков (латиница). На математике вы используете ещё греческий алфавит, от первых двух букв которого – альфа () и бета () – произошел сам термин «алфавит».

Набор цифр также можно считать алфавитом, хотя составляются из них не слова, а числа.

Алфавитами можно также считать:

- знаки нотного стана ???;

- знаки зодиака: , , , , , , , , , , , ;

- знаки азбуки Морзе: точка (●), тире (─) ¸ пауза (¦);

- знаки дорожного движения и многое другое.

Из знаков алфавита по определённым правилам составляются слова и строятся фразы, имеющие смысл в данном языке.

Пример

Последовательность сигналов ─ ● ─ ¦ ─ ─ ─ ¦ ─ ● ● ¦ ¦ радиолюбитель осмыслит как слово «KOD».

Два размещенных друг под другом знака дорожного движения означают для водителей: «остановка в выходные дни запрещена».

Нотную запись музыкант «читает» так же легко, как читатель книгу.


Различают следующие языки кодирования информации:

1) неформальные, в которых правила кодирования нестрогие, например:

  • разговорные (или естественные) – русский, украинский, английский, китайский и др. – всего более 2000 диалектов; алфавитом можно считать звуки;

  • язык мимики и жестов;

  • язык графики;

  • язык искусства;

2) частично формализованные, в которых определены основные правила кодирования, например:

  • письменные (литературные) языки – всего более ???; алфавитом можно считать буквы;

  • язык математики;

3) строго формализованные, в которых правила кодирования чётко определённые для всех возможных случаев, например:

  • язык технических чертежей;

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

В разных языках используются различные правила построения «слов» и «фраз». Но общими для всех являются следующие правила кодирования:

1) разным знакам исходного (кодируемого) сообщения должны соответствовать различные знаки получаемого кода;

2) код выбирается так, чтобы полученное закодированное сообщение было по возможности минимальной длины – чем короче сообщение, тем проще и экономнее его хранить, передавать, обрабатывать.

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

Пример

Звук «щ» в русском языке кодируется одной буквой – длина кода 1. В английском языке он кодируется тремя буквами «sch» - длина кода 3.

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

Пример

Литературный текст можно считать кодом, с помощью которого мысли и образы, существующие в нашем сознании (их можно считать знаками исходного сообщения), мы передаем собеседнику. Это – код переменной длины, поскольку есть слова длиной в одну, две, три и более букв.

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

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

Пусть в алфавите N знаков {z1, }.

Кодом длины 1 можно закодировать N разных знаков исходного сообщения.

Рис. Коды длины 1.

Если алфавит исходного сообщения включает в себя больше, чем N знаков, то код длины 2 будем строить так: на первое место ставим z1, а затем к нему по очереди приписываем z1 , z2 ,… zN . Получаем: z1z1 , z1z2 ,… z1zN . Аналогично поступаем с z2, z3,… zN. Всего получаем N2 разных кодовых последовательностей.

Рис. Коды длины 2.

Если требуется закодировать больше знаков исходного сообщения, то берём по очереди построенные коды длины 2 и к ним в алфавитном порядке дописываем z1, z2,… zN. Получаем код длины 3. Всего будет N3 кодов и т.д.

В общем случае, если в алфавите N знаков и используется код длины k, то всего можно закодировать Nk различных знаков исходного сообщения.

Пример

Построим кодовые последовательности для алфавита {0, 1} длиной 1, 2, 3.

Кодом длины 1 можно закодировать 2 разных знака, кодом длины 2 – 4 знака, кодом длины 3 – 8 знаков, кодом длины k можно закодировать 2k знаков.


ЗНАТЬ


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

Упорядоченный набор знаков (сигналов), с помощью которых по определенным правилам строятся «слова» и «фразы» в данном языке, называется алфавитом.

Алфавит, состоящий всего из двух знаков, называется двоичным.

Кодирование – процесс преобразования по определенному правилу одного набора знаков (сигналов) в другой набор знаков (сигналов).

Код – правило преобразования одного набора знаков в другой набор знаков.

Длина кода – количество знаков, с помощью которых кодируется сообщение, необходимых для кодирования 1 знака исходного сообщения.

Коды бывают постоянной и переменной длины.

В естественных языках чаще используются коды переменной длины. Это, в частности, позволяет сократить среднюю длину фраз в данном языке.

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

Существует правило кодирования, которое можно считать универсальным:

  1. код длины 1 строится из знаков алфавита кодирования, взятых по одному в алфавитном порядке;

  2. код длины k+1 строится так: берется каждый код длины k и к нему по очереди дописываются в конец знаки алфавита кодирования в алфавитном порядке.

Если для кодирования используется N знаков и код длины k, то всего можно закодировать Nk различных знаков исходного сообщения.


УМЕТЬ


Выразите с помощью разных языков (русского, английского, языка графики, языка мимики и жестов, чисел и т.п.):

а) сообщение об опасности;

б) номер своей школы;

в) чертёж детали:


Запишите алфавит, который используется:

а) в вычислительной технике;

б) в азбуке Морзе;

в) в римской системе счисления;

г) в записи музыки.


Пусть для кодирования используется двоичный алфавит. Можно ли использовать код переменной длины? Если нет, то объясните почему. Если да, то приведите пример такого кодирования, например, для чисел от 0 до 100. Учтите, что никаких других знаков (пробел, точка и т.п.) использовать нельзя – только 0 и 1.


Используя двоичный алфавит и универсальный способ кодирования, закодируйте буквы русского алфавита. Какова будет минимальная длина кода?


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


Числа от 0 до 1100 нужно закодировать буквами русского алфавита. Какова будет минимальная длина кода, если использовать код постоянной и переменной длины?


6