Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции на экзамен.doc
Скачиваний:
9
Добавлен:
16.12.2018
Размер:
733.7 Кб
Скачать

5.2. Кодирование и декодирование

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

Лекция №3 Тема: Структуры данных.

1. Типы данных

Р

Информация

Структура

Структурированная

Простая

(неструктурированная)

Динамичес-кие

Статичкские

Числовые

Символьные

Логические

азвитие вычислительной техники и программирования сопровождалось эволюцией представлений о роли данных и их организации. Одним из свойств компьютеров является способность хранить огромные объемы информации и обеспечивать легкий доступ к ней. Информация, подлежащая обработке, в некотором смысле представляет абстракцию фрагмента реального мира. Мы говорим о данных как об абстрактом представлении реальности, поскольку некоторые свойства и характеристики реальных объектов при этом игнорируется (как несущественные для данной задачи). Например, каждый сотрудник в списке сотрудников некоторого учреждения представлен множеством данных. Это множество может включать идентифицирующие данные (например, фамилию), данные, относящиеся тому, что сотрудник делает или к тому, что делают для него. Однако, мало вероятно, что будут включены такие сведения, как цвет глаз или волос и вес. Решая конкретную задачу, необходимо выбрать множество данных представляющих реальную ситуацию. Затем надлежит выбрать способ представления этой информации. С развитием вычислительной техники и программирования средства возможности представления данных получили большое развитие и теперь позволяют использовать простейшие неструктурированные данные, так и данные более сложной структуры, называемые структурированными, поскольку они обладают некоторой организацией. В более сложных случаях программист может задать динамические структуры данных, память для хранения которых выделяется прямо в процессе выполнения программы. Остановимся подробнее на свойствах различных представлений данных или, как еще говорят, типах данных.

1.2. Простые (неструктурированные) типы данных

В информатике понятие информации часто заменяют понятием величина.

Простые величины - объекты, используемые в процессе обработки информации. К ним относятся начальные данные (начальная информация) и результаты (информация после обработки).

Величины делятся на постоянные и переменные.

Если значение величины определяется во время составления правил интерпретации языка общения, тогда величина называется постоянной. Значит, при присвоении имени постоянной величине одновременно определяется и ее значение. Вместе со значением будет известен и ее тип. Например, если рассмотреть последовательность 135 составленный из цифр 1, 3 и 5 как имя постоянной величины, то значение этой величины будет целое число “сто тридцать пять”. Если же из этих цифр образовать другую последовательность, например 315, тогда она определяет другую постоянную величину, значение которой целое число “триста пятнадцать”. Вывод:

У постоянной величины не меняется имя, значение и тип, все они определяются одновременно.

Теперь дадим определение переменной величине. Если значение присвоенное имени величины изменяется во время обработки, то такая величина называется переменной величиной.

Обычно тип значения переменной величины не должен меняться.

Для присвоения имени переменной величине в информатике используется понятие - идентификатор.

Идентификатор – это последовательность букв и цифр, начинающаяся с буквы.

Примеры:

1) А - идентификатор

2) ХI - идентификатор

3) N12В - идентификатор

4) 1Х – не идентификатор, так как начинается с цифры.

  1. 5) А+В - не идентификатор, так как имеется специалный символ «+».

Значение величины определяется своим типом.

В математике принято классифицировать величины в соответствии с их характеристиками. Различают числовые (целые, вещественные, комплексные) и логические величины, величины, представляющие собой отдельные значения, множества значений или множества множеств. Аналогично этому в информатике любая константа, переменная, выражение или функция относится к некоторому типу. В общем случае, значение простых величин можно разбить на числовые, символьные и логические типы. Фактически тип характеризует множество значений, которые может принимать константа, переменная, выражение или функция. К данным каждого типа применимы определенные операции и их поведение подчиняется некоторым аксиомам.

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

Над действительными (или вещественными) числами могут быть выполнены операции сложения (+), вычитания ( –), умножения и деления (/), так же, как и над математическими действительными числами. Однако все операции над действительными числами выполняются с точностью, не превосходящей некоторого фиксированного значения, вследствие того, что представления чисел в памяти компьютера имеют ограниченную длину (зависящую от конкретного компьютера и используемой системы программирования). Так, например, в машинной арифметике может быть 1/3 = 0,33333333, тогда как математически точное десятичное представление дроби 1/3 – бесконечно длинное число.

Главным свойством литерных (символьных) данных является их упорядоченность, т.е. свойство быть сравнимыми. Обычным признаком значения символьной или текстовой величины являются кавычки, и справедливо 'а' < 'Ъ', 'Ъ' < 'с', 'с' < 'д' и т.д. Каждый символ имеет определенный числовой код (например, код символа латинской буквы 'А' в большинстве кодировок 63) и упорядочение происходит в соответствии с этими числовыми кодами. Как правило, имеются функции, позволяющие получить по символу его код и символ по ходу.

Для строковых величин единственной выполнимой операцией является конкатенация («сложение») строк. Например, 'аЬсд' + 'еЯ' = 'аЬсдеЯ'. В конкретных системах обычно определены функции, определяющие длину строк, вхождение в них тех или иных подстрок, вырезающие из строк некоторые фрагменты.

К логическим данным, способным принимать значения «истина» («truе») или «ложь» («false»), применимы основные операции логики высказываний: конъюнкция (логическое «и»), дизъюнкция (логическое «или»), отрицание (логическое «не»). Иногда можно использовать операции импликации (<если»), эквиваленции («если и только если») и т.п.

Введение в программирование. Основы алгоритмизации задач