2. Структури и моделі даних.
Формати представлення інформації.
Є три формати представлення інформації - цифровий, текстовий і графічний
1. Представлення цифрової інформації - системи числення
Системою числення називають сукупність символів (цифр) і правил їх використання для представлення чисел.
Найпершою виникла унарна (Від лат. Unus - один) система запису, при якому числа позначалися відповідною кількістю рисок.
У римській системі числення для позначення чисел використовували букви (5 - V, 10 - X, 50 - L, 100 - C, 500 - D, 1000 - M), але роль їх залежала від порядку запису (значення могло не тільки додаватися, але і відніматися). Розвиток цієї ідеї привів до появи сучасних позиційних систем числення.
Десятерічная система - позиційна система числення - значення цифри залежить від її позиції (місця) в числі. Тобто його можна записати от так:
N = a2.102 + a1.101 + a0.100.
Число 10 - називають основою системи числення, а степені десятки - вагами розрядів.
Компютерна система числення. По технічних причинах двійкове кодування є "рідною мовою" комп'ютерів.
Комп'ютерне представлення числа - не зовсім співпадає з його двійковим записом на папері.
По-перше, в двійковій системі для представлення чисел використовуються не два символи, а чотири:
"мінус" для позначення негативних чисел і "кома" (або "крапка") для відділення дробової частини від цілої.
По-друге, для представлення чисел в комп'ютері відводиться строго певна кількість байт, отже діапазон і точність уявлення виявляються обмеженими. Дуже велике число приведе до так званої помилки переповнювання (загубляться старші розряди), дуже маленьке буде сприйняте як нуль. Але навіть якщо дробове число і поміститься в розрядну сітку (тобто у відведену кількість біт), цілком може бути втрачена точність.
2. Представлення нечислової інформації - кодування тексту
При кодуванні тексту для кожного його символу відводиться, зазвичай, по 1 байту. Це дозволяє використовувати 28=256 (тобто 8 біт) різних символів. Відповідність між символом і його кодом може бути вибране абсолютно довільно. Проте на практиці необхідно мати можливість прочитати на одному комп'ютері текст, створений на іншому. Тому таблиці кодувань стандартизовані. Практично всі таблиці, що використовуються зараз, засновані на "американському стандартному коді обміну інформацією" ASCII (ASCII - American Standard Code for Information Interchange). Цей стандарт визначає значення для нижньої половини кодової таблиці - перших 127 кодів (32 керуючі коди, основні розділові знаки і арифметичні символи, цифри і латинські букви).
Гірша справа з "національними" символами і "друкарськими" розділовими знаками. А особливо тими мовам, які використовують кирилічний алфавіт (російська, українська, білоруська, болгарська і т.д.).
Для кирилічної мови зараз широко використовуються п'ять таблиць кодувань:
CP866 (DOS-альтернативна) – на PC- сумісних комп'ютерах при роботі з операційними системами DOS и OS/2, а також в любительській міжнародній мережі Фідо (Fidonet).
Технічна організація мережі Фідонет. Спочатку для передачі даних в мережі Фідонет використовувалося пряме модемне підключення через телефонну лінію. Фідонет є оффлайновою мережею, тобто повідомлення і файли розповсюджуються по мережі, тоді як користувач може бути відключений від мережі.
Спочатку основним протоколом мережі Фідонет був протокол передачі «мережевої пошти» ( HYPERLINK "http://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D1%82%D0%BC%D0%B5%D0%B9%D0%BB" \o "Нетмейл" нетмейла, HYPERLINK "http://ru.wikipedia.org/wiki/%D0%90%D0%BD%D0%B3%D0%BB%D0%B8%D0%B9%D1%81%D0%BA%D0%B8%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA" \o "Английский язык" англ. Netmail): індивідуальних е HYPERLINK "http://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D0%BF%D0%BE%D1%87%D1%82%D0%B0" \o "Электронная почта" лектронних текстових повідомлень, що містять ім'я відправника і одержувача, а також Фидонет-адреса кожного з них. У мережі забезпечується HYPERLINK "http://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D1%83%D1%82%D0%B8%D0%BD%D0%B3" \o "Роутинг" роутинг повідомлень, так що відправникові і одержувачеві повідомлення не обов'язково встановлювати між собою прямий («директний», HYPERLINK "http://ru.wikipedia.org/wiki/%D0%90%D0%BD%D0%B3%D0%BB%D0%B8%D0%B9%D1%81%D0%BA%D0%B8%D0%B9_%D1%8F%D0%B7%D1%8B%D0%BA" \o "Английский язык" англ. direct) зв'язок. Нетмейл позволял «присоединять» к каждому передаваемому сообщению один HYPERLINK "http://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB" \o "Файл" файл. Это позволило создать серию работающих поверх нетмейла протоколов, передающих информацию от одного узла к другому в прикрепленных файлах.
Найчастіше використовуваним з таких протоколів є echomail, що є публічними конференціями, схожими на групи HYPERLINK "http://ru.wikipedia.org/wiki/Usenet" \o "Usenet" Usenet.
Фідонет не є частиною І HYPERLINK "http://ru.wikipedia.org/wiki/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82" \o "Интернет" нтернета. Проте в даний час канали і протоколи Інтернету досить часто використовуються для передачі поверх них трафіку Фідонет, велика частина ехоконференцій мережі Фідонет доступна користувачам Інтернет через HYPERLINK "http://ru.wikipedia.org/wiki/Usenet" \o "Usenet" Usenet и HYPERLINK "http://ru.wikipedia.org/wiki/WWW" \o "WWW" WWW-гейти.
CP1251 (Windows- кодування) - на PC- сумісних при роботі під Windows 3.1 і Windows 95
KOI-8r - найстаріша з кодувань, що використовуються до цих пір. Застосовується на комп'ютерах, що працюють під UNIX, є фактичним стандартом для російських текстів в мережі Internet.
4. Macintosh Cyrillic - призначена для роботи зі всіма кирилічними мовами на Макінтошах (при розробці цього кодування не врахували одну букву українського алфавіту. Тому українська - єдина кирилічна мова, для якої на Макінтошах є своє окреме кодування, - Macintosh Ukrainian).
5. ISO-8859. Це кодування замислювалося як міжнародний стандарт для кирилічних текстів.
Перетворення виконати дуже легко. Для цього служать спеціальні програми - текстові конвертори. Останнім часом з'являються конвертори, здатні самостійно визначати початкове кодування тексту і що навіть уміють "розшифровувати" текст після неправильного перекодування.
Існують і спеціальні шрифти (так звані, дінгбатси), які містять не букви, а спеціальні символи, наприклад, математичні або музичні; елементи орнаментів, піктограми.
Міжнародне кодування Unicode, розроблене кілька років тому, тепер починає упроваджуватися на практиці. Взагалі, unicode-таблиця - чотирьохбайтова, але зараз частіше використовуються особливі способи додаткового кодування - Utf-8 і Utf-16, де довжина коду залежить від поширеності символу. Українські букви і в тому і в іншому випадку представляються двома байтами (а латинські в Utf-8 - всього одним).
3. Представлення зображення - Два способи кодування зображення
растрове и векторне представлення графіки.
Зображення на екрані комп'ютера (або при друці за допомогою принтера) складається з маленьких "крапок" - пікселів. Природно, якість зображення буде тим вище, чим "щільніше" розташовані піксели (тобто чим більше роздільна здатність пристрою виводу), і чим точніше закодований колір кожного з них.
Роздільну здатність вимірюють в "крапках на дюйм" (dpi) - Dot Per Inch. 1 дюйм = 25,4 мм. Для різних пристроїв ця величина приблизно наступна:
монітор - біля 75 dpi;
матричний принтер - біля 150 dpi (в режимі збільшеної якості);
струйний принтер – більше 300 dpi;
лазерний принтер – більше 600 dpi;
фотонаборний апарат – більше 1200 dpi.
У простому випадку кожен піксел може бути або чорним, або білим. В цьому випадку чорний колір представлений нулем, а білий - максимально можливим числом. Наприклад, при восьмибітовому кодуванні вийде 256 різних значень яскравості - 256 півтонів.
Складніше з кольоровими зображеннями. Адже тут потрібно закодувати не тільки яскравість, але і відтінок піксела. Зображення на моніторі формується шляхом складання в різних пропорціях трьох основних кольорів: червоного, зеленого і синього - RGB = Red-green-blue. Значить, просто потрібно зберігати інформацію про яскравість кожній з цих складових.
Для отримання найвищої точності перенесення кольорів досить мати по 256 значень для кожного з основних кольорів (разом це дає 2563 - більше 16 мільйонів відтінків) - True color (англ.) - дійсний колір. У багатьох випадках можна обійтися декілька меншою точністю перенесення кольорів. Якщо використовувати для представлення кожної складової по 5 біт (а тоді для зберігання даних піксела буде потрібно не 3, а 2 байти), вдасться закодувати 32768 відтінків High color (англ.) - високоякісний колір.
На практиці зустрічаються ситуації, коли набагато важливіше не ідеальна точність, а мінімальний розмір файлу; бувають і зображення, де спочатку використовується невелика кількість кольорів. В таких випадках збирають всі потрібні відтінки в таблицю і нумерують їх, після чого зберігають вже не повний код кольору кожного піксела, а номери кольорів в таблиці (індекси - Indexed color (англ.) -- індексований (табличний) колір). Найчастіше використовують 256-кольорові таблиці. Оскільки в різних комп'ютерах можуть бути прийняті різні стандартні таблиці кольорів, не виключено, що відкривши отриманий від кого-небудь графічний файл, ви побачите абсолютно немислиму картинку.
Саме тому при створенні сторінок в Web прагнуть використовувати так звану "безпечну палітру" Netscape, що включає 216 кольорів, які правильно відображаються в різних системах.
При друці на папері використовується декілька інша колірна модель: якщо монітор випускає світло, відтінок виходить в результаті складання кольорів, то фарби - поглинають світло, кольори віднімаються. Тому як основні використовують блакитну, бузкову і жовту фарби. Крім того, із-за неідеальності барвників, до них зазвичай додають четверту - чорну - CMYK = Cyan-magenta-yellow-black. Для зберігання інформації про кожну фарбу і в цьому випадку найчастіше використовується 1 байт.
Колірна модель - не єдина відмінність принтера і монітора. При друці в більшості випадків немає можливості змінювати яскравість крапки. Тому різні відтінки доводиться імітувати, за допомогою растрування: зображення розбивають на квадратики і, залежно від необхідного віддтінку, більшою чи меншою мірою заповнюють цю "растрову крапку" точками фарби. В результаті реальна роздільна здатність надрукованої фотографії (її вимірюють в "лініях на дюйм" - lpi - і називають лініатурою) виявляється набагато нижчою, ніж значення в dpi, вказане в паспорті принтера.
Загальні підходи до представлення інформації
Існує два основні підходи у визначенні «кількості інформації»:
1. імовірнісний підхід - розвинув американський математик Клод Шеннон
2. об'ємний підхід - виник в результаті створення ЕОМ.
Імовірнісний підхід
Тут вводиться термін ентропія - кількісна міра невизначності. Теорія Шенона описувалася на фундаментальному понятті ентропії і пов'язаного з нею поняття - кількості інформації.
За відсутності невизначеності ентропія = 0, при максимальній невизначеності ентропія повинна досягати максимального значення.
EMBED Equation.3 - Формула Шеннона.
m — число повідомлень, i - номер повідомлень, Pi — вероятность i-го повідомлень.
Якщо число повідомлень рівноімовірні, то було введено поняття міри Хартлі - запропонував обчислювати інформацію, яка приходиться на одне повідомлення, яке складається з рівноймовірніх символів через логарифм загального числа можливих повідомлень
EMBED Equation.3 .
даний вираз використовується, якщо події рівноімовірні, а ситуацію або результат можна повністю визначити.
Об'ємний підхід
В технічному пристрої найпростіше реалізувати 2 протилежних фізичних стани: намагніченість в двох протилежних напрямах; прилад пропускає струм чи ні; конденсатор, заряджений або розряджений. Тому творці комп'ютерів віддають перевагу двійковій системі числення (0 і 1 - біт).
Біт — найменша одиниця інформації.
Об'єм інформації в двійкових знаках підраховується по кількості двійкових символів:
8 бит - 1 байт; 1024 байт- 1 кбайт; 1024 кбайт - 1 Мбайт; 1024 Мбайт - 1 Гбайт
Між імовірнісною і об'ємною кількістю інформації співвідношення неоднозначне. Не всякий тест, записаний двійковими символами, допускає вимірювання об'єму інформації в кібернетичному сенсі, але допускає його в об'ємному. А якщо якесь повідомлення можна заміряти 2-мя способами, то вони не обов'язково співпадають, при цьому кібернетична кількість інформації не може бути більша за об'ємну.
Загальна характеристика процесів збору, обробки і передачі інформації
Під збором інформації розуміється процес відбору її з навколишнього середовища і введенні її в інформаційну систему (ІС), яка її оброблятиме, зберігатиме і передаватиме. Метою процесу збору інформації є забезпечення готовності інформації до подальшого просування в системі і представлення її в різних формах (кодування сигналу в лінії, символи на дисплеї, віддруковані символи і тому подібне).
Умовно процес збору інформації можна розділити на два методи:
1)механічний збір, який полягає в тому, що джерело інформації (подія, досвід) викликає зміну фізичного стану деякого об'єкту, яка реєструється механічним способом;
2)спостереження, здійснюване людиною, з подальшим відтворенням по пам'яті - реєстрацією.
При механічному зборі інформації, наприклад системою датчиків, міра достовірності отримуваної інформації постійна і заздалегідь відома (що визначається класом точності вимірювального приладу). Механічний збір інформації здійснюється за допомогою датчиків. При цьому розрізняють наступні типи датчиків: механічні, електричні, оптичні, акустичні і випромінюючі. На практиці, як правило, використовують комбінації декількох типів датчиків, наприклад: електромагнітні, фотоелектричні, ультразвукові і тому подібне.
В процесі збору інформація може поступати в інформаційні системи в наступних видах:
1) аналоговий, тобто у вигляді деякої безперервної функції часу, що відображає зміну інформації;
2)дискретну, у вигляді «Так», «Ні», 1, 0, і тому подібне, тобто зміна стану стрибком;
3)кодову або цифрову, коли інформація представляється у формі поєднань «0» і «1», відповідних певним символам.
Під обробкою інформації розуміють її перетворення у вигляд, зручний для подальшого просування в інформаційні системи. Інформація, яка не може бути зібрана механічними засобами, збирається людиною. При цьому простим способом збору інформації є її реєстрація - запис на носії.
Обробка інформації в інформаційний системах розкладається на ряд етапів і здійснюється безпосередньо після реалізації процесу збору інформації.
Першим етапом є перетворення інформації (кодування) у вигляд, властивий даній інформаційній системі. Наприклад, людина, як інформаційна система, не здатна сприймати інформацію у вигляді електромагнітних коливань, і, отже, електромагнітні коливання необхідно представити в акустичні (звукові) коливання або оптичні образи. Для інформаційних систем - це представлення символів у форматі даного типу.
Другим етапом (найбільш важливим) є ідентифікація, розпізнавання інформації. Розпізнавання інформації може здійснюватися:
- за ознаками
- за ідентифікуючими ключами (час, супровідні сигнали і тому подібне)
Найбільш поширений метод розпізнавання по ознаках. В цьому випадку в системі фіксується набір ознак (наприклад, набір поєднань «0» і «1» в коді). Потім отримана інформація порівнюється з фіксованими ознаками і виноситься ухвала про приналежність інформації до того або іншого типу. Найпростіше подібний метод реалізується у вигляді дешифрування коду і використовується для розпізнавання символів.
Для ідентифікації мовних сигналів розроблена спеціальна система ознак: частота основного тону, нестаціонарність і так далі Тут ідентифікація не однозначна.
Набагато складнішою проблемою є ідентифікація графічних образів.
Якщо для ідентифікації використовується ключ (кодове слово, біт ознаки і тому подібне), то використовується тільки один ознака - ключ і ідентифікація однозначна.
Третім етапом є цілеспрямована зміна інформації. Сюди відносять:
- виконання арифметичних операцій - розрахунків;
- доповнення і об'єднання інформації з вже наявною в системі;
- реалізація процедур ухвалення рішення при оцінці інформації від різних джерел (моделювання ситуацій, експертні оцінки і тому подібне)
- представлення інформації в зручному для споживача вигляді (зображення, звук і тому подібне)
Реалізація процедур передачі інформації визначається типом носія інформації, структурою і завданнями інформаційної системи, вимогами до надійності (перешкодозахищеності). Цими вимогами і визначається гранично допустима пропускна спроможність інформаційної системи. Очевидно, що найменшою швидкістю передачі володіє інформаційна система з носіями інформації на папері, а найбільшою - інформаційні системи з оптичними лініями зв'язку. Найбільш поширеним типом носія є електромагнітне коливання (сигнал). Завдання, що вирішуються інформаційною системою, і її структура тісно зв'язані. Передача всередині ЕОМ, при зв'язку 2-х ЕОМ, мережа ЕОМ. Перешкодозахищеність реалізується шляхом надмірного кодування. Тут використовуються коди, які вказують на помилки і виправляють помилки.