Лекции по Вычислительным машинам   

3. Данные, типы элементарных данных

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

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

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

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

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

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

Кодирование. При обработке информации часто необходимо представлять средствами одного алфавита буквы других алфавитов. Такое представление носит в информатике наименование кодирования. Проблема решается просто, если требуется закодировать буквы алфавита X с меньшим числом букв, чем у кодирующего алфавита Y. Если, например, X — алфавит десятичных цифр, a Y — обычный русский алфавит, то для кодирования X в Y достаточно положить 0 = а, 1 = б, 2 = в, 3 = г, ..., 9 = к. Конечно, возможны и другие способы кодирования, одним из наиболее естественных из которых является просто замена десятичных цифр их русскими названиями: нуль, один, два и т. д.

При кодировании алфавитов с большим числом букв в алфавитах с меньшим числом букв использование для кодирования последовательностей букв является обязательным условием для возможности различения кодов разных букв, что является условием правильного кодирования. Так, буквы русского алфавита можно закодировать парами десятичных цифр, например, а = 01, б = 02, ..., к = 10, л = 11, ...

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

Байтовый алфавит. Ввиду своей простоты двоичный алфавит наиболее широко распространен в технических устройствах, в первую очередь в ЭВМ. Для кодирования же алфавитов, которыми привык пользоваться человек, употребляются последовательности двоичных цифр. Легко видеть, что последовательностями из п двоичных цифр можно закодировать 2n различных символов. При п = 8 их число равно 256, что оказывается достаточным для кодирования большинства встречающихся на практике алфавитов.

Последовательность из 8 двоичных цифр получила в связи с этим наименование байта. Составляемый же подобными последовательностями алфавит из 256 букв называют байтовым алфавитом. В практике использования ЭВМ в международном масштабе укоренился единый стандарт байтового кодирования строчных и прописных букв латинского алфавита, знаков препинания, десятичных цифр с десятичной запятой (точкой), а также ряда математических символов (знаки арифметических и логических операций, знаки равенства и неравенства и др.). Специальный код закрепляется за знаком пробела.

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

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

Данные, элементарные данные. Информация, с которой имеют дело ЭВМ, называется данными, которые разбиваются на отдельные составляющие, называемые элементарными данными или элементами данных. Употребляются элементы данных различных типов. Тип данных (элементарных) зависит от значений, которые эти данные могут принимать. В современной информатике среди различных типов элементарных данных наиболее употребительными являются целые и вещественные числа, слова и булевы величины.

Прежде всего различают двоичное и двоично–десятичное представления чисел. В двоичном представлении используется двоичная система счисления с фиксированным числом двоичных разрядов (чаще всего 32 разряда, включая разряд для представления знака числа). Если нулем обозначать плюс, а единицей — минус, то 00001010 означает целое число , а 10001100 — число (для простоты взято 8–разрядное представление). В случае вещественных чисел (а фактически, с учетом ограниченной разрядности, дробных двоичных чисел) употребляются две формы представления: с фиксированной и с плавающей запятой. В первом случае просто заранее условливаются о месте нахождения запятой, не указывая ее в коде числа. Например, если условиться, что запятая стоит между 3–м и 4–м разрядами справа, то код 00001010 будет означать число .

Во втором случае код числа разбивается на два кода в соответствии с представлением числа в виде . При этом число а (со знаком) называется мантиссой, а число b (со знаком) — характеристикой числа х. О положении кода характеристики и мантиссы (вместе с их знаками) в общем коде числа также условливаются заранее. Для экономии числа разрядов в характеристике b ее часто представляют в виде , где k фиксированная константа (обычно k = 2). Вводя еще одну константу т и полагая , можно избежать также использования в коде характеристики знака (при малых число b отрицательно, а при больших — положительно).

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

Тип данных «произвольное слово во входном алфавите» не нуждается в специальных пояснениях. Единственное условие — необходимость различать границы отдельных слов. Это достигается использованием специальных ограничителей и указателей длины слов.

Тип булев присваивается элементарным данным, способным принимать лишь два значения: «истина» и «ложь». Для представления булевых величин обычно используется двоичный алфавит.

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

В отличие от переменных величин, для которых требуется различать их имя и значение, для постоянных величин ее значение может служить и ее именем. Однако часто полезно именовать постоянные величины идентификаторами (например, число е ≈ 2,718 и др.), имея в виду, что такого рода идентификатор представляет собой константу и может принимать лишь единственное значение.



*****
© Банк лекций Siblec.ru
Формальные, технические, естественные, общественные, гуманитарные, и другие науки.