Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Понятие данных

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

 

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

Данным приписываются несколько классификационных при­знаков.

1. Тип данных, который определяет:

• набор их допустимых значений;

• правила их обработки (преобразования);

• порядок их размещения в ОЗУ и ВЗУ при хранении;

• порядок доступа к ним (т.е. обращение и извлечение при необ­ходимости с места хранения).

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

2. Структура данных. Элементарные (одиночные, простые) и структурированные (сложные).

1). Элементарные данные. Символы, числа (целые и вещественные) и логические данные. Общей и обязательной осо­бенностью одиночных данных является то, каждое из них имеет одно значение и собственное имя. Значение - это содержимое тех ячеек памяти, где данное располагается. Имя (его называют также идентификатор ) - это обозначение данного в тексте программы. Правила построения идентификаторов элементарных данных определяются языком программирования написанной программы.

2). Элементарные данные являются «кирпичиками», путем объе­динения которых строятся сложные данные. Вариантов объедине­ния существует много - это приводит к появлению множества типов структур данных.

а) Информационный массив, объединяющий данные и связи (отношения)между ними называетсяструктурирован­ными данными.

б) Перечень объединяемых одиночных данных, их характери­стики, а также особенности связей между ними образуют структуру данных.

Примерами структурированных данных является страница из классного журнала с фамилиями учеников, датами занятий и от­метками, телефонный справочник, организационная структура учреждения и т.п.

Сложные данные, как и элементарные, имеют значения и идентификаторы. Правила построения идентификаторов структурированных данных устанавливаются языком программирования или программной сис­темой, а правила формирования имен фай­лов задаются операционной системой.

3. Динамичность данных. Как простые, так и структурированные данные подразделяются на переменные и постоянные (константы). Переменные могут изменять свое значение по ходу исполнения программы, а константы - нет. Хранятся переменные и постоянные данные в ОЗУ одинаково.

4. Этапы обработки. В зависимости от того, на каком этапе обработки данные ис­пользуются, они подразделяются на исходные (входные), проме­жуточные и выходные.

К исходным данным относятся те, которые вводятся в программу в про­цессе работы.

Промежуточные данные формируются в ходе исполнения про­граммы и существуют в ОЗУ или на ВЗУ.

Выходные данные являются результатом работы про­граммы. Форму выходных данных определяет адресат предназначения.

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

Представление данных при их хранении и обработке требует решения трех основных задач на трех иерархических уровнях:

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

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

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

Различными типами элементарных данных являются символы, целые числа, вещественные числа и логиче­ские данные. Логический и физический уровни их представления определяются конструктивными особенностями ОЗУ компьютера.

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

2. Ячейка памятиявляется элементом физического уровня представления данных. Она объединяет запо­минающие элементы хранения одного бита кода. Емкость ячейки памяти кратна целому числу байт. Обращение к ячейке памяти осуществляется по ее номеру, который называется адресом ячейки.

Запоминающие устройства, в которых доступ к данным осуществляется по адресу ячейки, где они хранятся, на­зываются устройствами с произвольным доступом (RAM Random-Access-Memory). Время поиска нужной ячейки, а также продолжительность опе­раций считывания или записи в ЗУ произвольного доступа одина­ково для всех ячеек независимо от их адреса.

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

Рассмотрим особенности представления всех типов элементар­ных данных с помощью 16-битного машинного слова.

1. Для представления символов (тип Char) машинное слово делится на два байта. Один байт содержит двоичный код одного символа.

Множество допустимых значений данных этого типа для всех ко­дировок, при однобайтовом представлении, составляет 28 = 256; при двухбайтовой кодировке (Unicode) - 65536 значе­ний.

 

Номера разрядов машинного слова

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

                               

Второй байт (код второго символа) Первый байт (код первого символа)

 

2. Представление целых чисел со знаком(тип Integer).

Номера разрядов машинного слова

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

0                              

Знак числа Двоичный код числа

 

Старший бит (15-й) отво­дится под запись знака числа (0 соответствует «+», 1 - «-»), а осталь­ные 15 двоичных разрядов - под запись прямого (для положительного) или обратного (для отрицательного) двоичного кода числа. При этом возможные значения чисел ограничены интервалом (-32768 ¸ 32767).

3. Для представления целых чисел без знака под запись отводятся все 16 двоичных разрядов, и интервал разрешенных значений оказывается (0 ¸ 65535). В PASCALE такой числовой тип называется Word. Помимо математических отношений (>, <, =) над целыми числами определены операции сложения, вычитания и умножения (в тех случаях, когда они не приводят к переполнению разрядной сетки), а также целочисленного деления и нахождения остатка от целочисленного деления.

4. Представление вещественных чисел с плавающей запятой. При записи числа оно переводится в нор­мализованную форму с выделением и отдельным хранением знака мантиссы, знака порядка, порядка и мантиссы. Для представления числа отводится несколько машинных слов. Ситуация, соответст­вующая числовому типу Single в языке PASCAL, когда для пред­ставления числа отводится два машинных слова, проиллюстриро­вана на рис.

31 30 29 28 27 26 25 24 23 5 4 3 2 1 0

                  ….            

Знак порядка Порядок Знак числа Мантисса

 

Мантисса записывается в 24разряда двойного машинного кода (занимает все первое машинное слово и 0 ¸ 7 разряды второго машинного слова). Этой формой охватывается диапазон модулей мантиссы 1,5*10**(-45)¸3,4*10**38 (7 десятичных цифр).

Так как модуль мантиссы 0,12 £ ½M2 ½ < 1, всегда значение старшего разряда числа 0 (целых), которое не отобра­жается при записи, а значение следующего разряда всегда 1. В про­цессе выполнения операций может произойти переполнение раз­рядной сетки (на 1 разряд) или, наоборот, ее освобождение (т.е. в первом отображаемом разряде окажется 0). По этой причине после каждой операции производится нормали­зация результата, которая состоит в изменении порядка числа и сдвиге мантиссы, чтобы первой значащей цифрой снова оказалась 1. Изменение порядка в представлении чис­ла на -1 эквивалентно сдвигу кода числа на один разряд влево. Сдвиг на один разряд вправо соответствует изменению порядка числа на +1. Такая форма получила название «с плавающей запятой ». Благодаря применению плавающей запятой производится автоматическое масштабирование чисел в ходе вы­числений, что снижает погрешность их обработки. Над веществен­ными числами определены все четыре арифметические операции. Помимо этого имеются операции преобразования вещественного типа к целому (например, round и trunc в PASCAL'e).

5. Логические данные могут принимать одно из двух значений - О или 1 (0 соответствует логическому False, 1 - True, причем, принимается False<True). Для их записи было бы достаточно отвести всего один двоичный разряд. Однако в ОЗУ компьютера отсутствует доступ к отдельному биту, поэтому для представле­ния логических данных выделяется 1 машинное слово, в 0 и 8 раз­ряды которого и помещаются значения логической величины.

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

                               

Над логическими данными определены опера­ции: логическое умножение (конъюнкция, &), логическое сложе­ние (дизъюнкция, v), логическое отрицание (Ø). Примером логи­ческих данных может служить тип Boolean в PASCAL'e.

Значения элементарных данных формируются в ходе испол­нения программы и имеют физическое представление в ОЗУ. В отличие от них идентификаторы данных существуют только на уровне логического представления- они используются для обозначения данных в тексте программы, однако при трансля­ции программы с языка программирования в машинный код имена заменяются номерами ячеек, в которых данные разме­щаются. При исполнении такой программы обращение к данным производится по адресу ячейки, а не идентификатору. Адреса могут быть абсолютными - в этом случае они не изменяются при загрузке программы в ОЗУ - именно такой способ адреса­ции применяется в исполняемыхпрограммных файлах с расши­рением. соm. Однако в силу некоторых особенностей распреде­ления памяти компьютера размер таких программ не может пре­вышать 64 Кб. В исполняемых файлах с расширением. ехе на этапе трансляции устанавливаются относительные адреса данных, которые конкретизируются при размещении программы в ОЗУ - это несколько замедляет начало исполнения, зато сни­мает указанное выше ограничение на размер программы.

 

<== предыдущая лекция | следующая лекция ==>
Системный блок персонального компьютера | Общие сведения о структурах данных
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 6115; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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