Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Типізація даних.doc
Скачиваний:
4
Добавлен:
25.11.2018
Размер:
503.81 Кб
Скачать

ПЛАН

1

КОНЦЕПЦІЯ ТИПІВ ДАНИХ 1

Типізація даних 1

Скалярні типи даних 7

Концепція типів даних Типізація даних Рівні абстракції подання даних

Під терміном «дані» прийнято розуміти форму представлення інформації у вигляді, придатному для її обробки на ПК.

При цьому дані є абстракціями реальних об'єктів, оскільки відносяться до предметної області вирішуваної задачі, але в них ігноруються деякі властивості і характеристики реальних об'єктів, не істотні для даної задачі. Як приклад можна розглянути персональний файл службовця. Кожен службовець представлений (абстрагований) в цьому файлі множиною даних, істотних або для його службової характеристики, або для процедур розрахунку його заробітної плати. Ця множина може включати деяку ідентифікацію службовця, наприклад, його ім'я, адресу проживання, заробітну плату. Але навряд чи вона міститиме такі неістотні для зазначених задач дані, як його колір волосся, вагу і зріст.

Тому при вирішенні будь-якої задачі треба вибрати деяку абстракцію дійсності, тобто визначити множину даних, які описують реальну ситуацію. Окрім того, потрібно вибрати спосіб представлення цієї інформації, який визначається інструментами, що застосовуються для вирішення задачі (засобами, які надає ПК). У більшості випадків ці два етапи є взаємозв’язаними.

Вибір представлення даних часто буває ускладненим, оскільки не визначається однозначно наявними засобами. Його слід здійснювати з урахуванням дій, що виконуються з даними. Наприклад, представлення чисел. Якщо єдина виконувана операція — додавання, то кращий спосіб представити число п — це написати п рисок. При цьому правило додавання виявиться абсолютно простим і очевидним. Подібний принцип використовується в римських цифрах, де правила додавання для невеликих чисел також досить прості. З іншого боку, правила додавання невеликих чисел, представлених арабськими цифрами, далеко не очевидні і вимагають запам'ятовування. Але при додаванні великих чисел, а також при множенні і діленні ситуація змінюється: представлення чисел за допомогою арабських цифр дозволяє набагато легше розкласти ці операції на простіші завдяки системі запису, заснованій на позиційній вазі цифр.

При вирішенні питання про представлення даних, зазвичай, є декілька рівнів деталізації. Нехай, наприклад, потрібно зобразити положення об'єкта у просторі. Для цього на першому етапі здійснюється його ідентифікація декартовими або полярними координатами, в якості яких беруться дійсні числа. На другому етапі ці числа представляються як числа з плаваючою крапкою: кожному дійсному числу х ставиться у відповідність пара цілих чисел, що позначають мантису f і порядок е (наприклад, x= f2e). На третьому етапі, коли враховується, що дані повинні розміщуватися в пам'яті ПК, отримуємо двійкове позиційне представлення цілих чисел, і на останньому, четвертому етапі, двійкові числа можуть представлятися, наприклад, напрямом магнітного поля в магнітному запам'ятовуючому пристрої.

Зрозуміло, що перший етап визначається в основному самою задачею, останні ж два етапи -тісно пов'язані з особливостями апаратної реалізації ПК і є «рішеннями нижнього рівня».

З точки ж зору мов програмування існують два рівня представлення даних: логічний і фізичний.

Логічний рівень - це абстрактне представлення даних, незалежне від представлення в ПК.

Фізичний рівень - це реалізація відповідних даних у конкретній обчислювальній системі. Зокрема, дані можуть мати різний формат збереження в пам’яті ПК, а також розмір виділеної для їх розміщення ОП. Це обумовлено тим, що об'єм пам'яті, яка виділяється для змінної, повинен встановлюватися залежно від того, яких значень вона може набувати.