
- •Конспект лекцій ( частина і ) з дисципліни
- •1. Поняття інформації та основні форми її подання
- •2. Представлення даних в пам’яті комп'ютера
- •3. Класифікація типів даних
- •4. Базові типи даних
- •4.1. Порожній тип
- •4.2. Логічний тип даних
- •4.3. Символьні типи даних
- •4.4. Цілочисельні типи даних
- •4.5. Дійсні типи даних
- •5. Похідні типи даних
- •5.1. Переліки
- •5.2. Вказівники
- •5.3. Посилання
- •5.4. Масиви
- •5.5. Структури
- •5.6. Бітові поля
- •5.7. Об'єднання
- •6. Перетворення типів
- •6.1. Неявне перетворення типів
- •6.1.1. Арифметичне перетворення типів
- •6.1.2. Перетворення типів при присвоюванні
- •6.2. Явне перетворення типів
- •6.3. Застаріла форма явного перетворення
- •Список літератури
- •1. Поняття інформації та основні форми її подання ------------------------------------------- 3
- •Основи представлення данних в пам'яті комп'ютера
- •6.050102 “Комп’ютерна інженерія
2. Представлення даних в пам’яті комп'ютера
Дані є складовою частиною інформації, що являють собою зареєстровані сигнали. Під час інформаційного процесу дані перетворюються з одного виду в інший за допомогою методів. Обробка даних містить в собі множину різних операцій. Основними операціями є:
1) збір даних - накопичення інформації з метою забезпечення достатньої повноти для прийняття рішення;
2) формалізація даних - приведення даних, що надходять із різних джерел до однакової форми;
3) фільтрація даних - усунення зайвих даних, які не потрібні для прийняття рішень;
4) сортування даних - впорядкування даних за заданою ознакою з метою зручності використання;
5) архівація даних - збереження даних у зручній та доступній формі;
6) захист даних - комплекс дій, що скеровані на запобігання втрат, відтворення та модифікації даних;
7) транспортування даних - прийом та передача даних між віддаленими користувачами інформаційного процесу. Джерело даних прийнято називати сервером, а споживача - клієнтом;
8) перетворення даних - перетворення даних з однієї форми в іншу, або з однієї структури в іншу, або зміна типу носія.
Для автоматизації роботи з даними, що відносяться до різних типів, важливо уніфікувати їх форму представлення. Для цього, як правило, використовується прийом кодування, тобто представлення даних одного типу через дані іншого типу. Універсальні засоби кодування успішно втілюються в різноманітних галузях техніки, науки та культури - математичні вирази, телеграфна азбука, морська азбука, азбука для сліпих тощо. Своя система кодування існує й в інформатиці, і називається вона двійковим кодом. Ґрунтується вона на представленні даних послідовністю двох знаків: (бітів) 0 та 1. Байт — найменша адресована одиниця пам'яті ЕОМ. Містить 8 бітів. інформації.
Одиниці виміру обсягу даних :
1 КБ (кілобайт) = 210 байт = 1024 байт;
1 МБ (мегабайт) = 210 КБ = 1024 КБ = 220 байт;
1 ГБ (гігабайт) = 210 МБ = 1024 МБ = 230 байт;
1 ТБ (терабайт) = 210 ГБ = 1024 ГБ = 240 байт;
1 ПБ (петабайт) = 210 ТБ = 1024 ТБ = 250 байт;
1 ЕБ (ексабайт) = 210 ПБ = 1024 ПБ = 260 байт;
1 ЗБ (зетабайт) = 210 ЕБ = 1024 ЕБ = 270 байт;
1 ЙБ (йотабайт) = 210 ЗБ = 1024 ЗБ = 280 байт;
3. Класифікація типів даних
Основна мета будь-якої програми полягає в обробці даних. Дані різних типів зберігаються в пам’яті комп’ютера і обробляються по-різному. Згідно з концепцією типів даних, кожний тип даних однозначно визначає:
-
множину значень, які може приймати змінна заданого типу;
-
операції та функції, які можна застосовувати до цієї змінної;
-
внутрішнє представлення змінної у пам'яті комп'ютера.
Нагадаємо, що пам'ять виділяється не для типу даних, а для розміщення змінних або констант певних типів.
В мові С++ розрізняють наступні категорії типів:
-
базові (або прості, основні, стандартні) типи даних;
-
похідні (або складні, складені) типи даних.
Базові типи мають імена, які є ключовими словами мови. До базових типів відносяться: скалярні типи і порожній тип (void).
Скалярні типи діляться на цілочисельні і дійсні типи (float, double, long double). Логічний тип (bool), символьні (char, wchar_t) та цілі (short, int, long) типи даних відносяться до цілочисельних типів. Для них визначені всі операції роботи з цілими числами.
Похідні типи визначаються на основі базових типів. Похідні типи діляться на скалярні і структуровані (або агрегатні).
До скалярних похідних типів відносяться:
- переліки (enum) ;
- вказівники (ім'я_типу *);
- посилання (ім'я_типу &).
До структурованих похідних типів відносяться:
- масиви;
- структури (struct);
- об'єднання (union);
- класи (class).
В структурах, об'єднаннях і класах можуть використовуватись бітові поля.
Для явного задання діапазону можна використовувати такі специфікатори:
-
Специфікатори short (короткий) і long (довгий) застосовуються до цілих. У таких оголошеннях слово int можна опускати, що зазвичай й робиться. Найчастіше для представлення цілого, описаного з специфікатором short, виділяється 16 біт, із специфікатором long - 32 біта, а значенню типу int - або 16, або 32 біта.
-
Специфікатори signed (зі знаком) або unsigned (без знака) можна застосовувати до будь-якому цілочисельного типу. Вони вказують, як інтерпретується нульовий біт змінної, тобто, якщо зазначено ключове слово unsigned, то нульовий біт інтерпретується як частина числа, у противному випадку нульовий біт інтерпретується як знаковий. У випадку відсутності ключового слова unsigned змінна вважається знаковою.