Інформатика, енциклопедія Навколосвіт

Інформатика

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

Всі файли умовно можна розділити на дві частини - текстові і двійкові.

Текстові файли - найбільш поширений тип даних в комп'ютерному світі. Для зберігання кожного символу найчастіше відводиться один байт, а кодування текстових файлів виконується за допомогою спеціальних таблиць, в яких кожному символу відповідає певна кількість, що не перевищує 255. Файл, для кодування якого використовується тільки 127 перших чисел, називається ASCII- файлом (скорочення від American Standard Code for Information Intercange - американський стандартний код для обміну інформацією), але в такому файлі не можуть бути представлені літери, відмінні від латиниці (в тому числі і українські). Більшість національних алфавітів можна закодувати за допомогою восьмібітной таблиці. Для української мови найбільш популярні на даний момент три кодування: Koi8-R, Windows-1251 і, так звана, альтернативна (alt) кодування.

Такі мови, як китайський, містять значно більше 256 символів, тому для кодування кожного з них використовують кілька байтів. Для економії місця часто застосовується такий прийом: деякі символи кодуються за допомогою одного байта, в той час як для інших використовуються два або більше байтів. Однією із спроб узагальнення такого підходу є стандарт Unicode, в якому для кодування символів використовується діапазон чисел від нуля до 65 536. Такий широкий діапазон дозволяє представляти в чисельному вигляді символи мови будь-якого куточка планети.

Але чисто текстові файли зустрічаються все рідше. Документи часто містять малюнки та діаграми, використовуються різні шрифти. В результаті з'являються формати, що представляють собою різні комбінації текстових, графічних і інших форм даних.

Приклади двійкового кодування інформації.

Серед усього розмаїття інформації, що обробляється на комп'ютері, значну частину становлять числова, текстова, графічна і аудіоінформація. Познайомимося з деякими способами кодування цих типів інформації в ЕОМ.

Кодування чисел.

Є два основні формати представлення чисел в пам'яті комп'ютера. Один з них використовується для кодування цілих чисел, другий (так зване представлення числа в форматі з плаваючою точкою) використовується для завдання деякого підмножини дійсних чисел.

Безліч цілих чисел, які представлені в пам'яті ЕОМ, обмежена. Діапазон значень залежить від розміру області пам'яті, використовуваної для розміщення чисел. В k -розрядної осередку може зберігатися 2 k різних значень цілих чисел.

Щоб отримати внутрішнє уявлення цілого позитивного числа N. зберігається в k-розрядних машинному слові, потрібно:

1) перевести число N в двійкову систему числення;

2) отриманий результат доповнити зліва незначущими нулями до k розрядів.

Наприклад, для отримання внутрішнього уявлення цілого числа 1607 в 2-х байтовой осередку число переводиться в двійкову систему: 160710 = 110010001112. Внутрішнє подання цього числа в комірці має вигляд 0000 0110 0100 0111.

Для запису внутрішнього уявлення цілого негативного числа (-N) потрібно:

1) отримати внутрішнє уявлення позитивного числа N;

2) отримати зворотний код цього числа, замінюючи 0 на 1 і 1 на 0;

3) отриманого числа додати 1 до отриманого числа.

Внутрішнє представлення цілого негативного числа -1607. З використанням результату попереднього прикладу і записується внутрішнє уявлення позитивного числа 1607 0000 0110 0100 0111. Зворотний код виходить інвертуванням: 1111 1001 1011 1000. Додається одиниця: 1111 1001 1011 1001 - це і є внутрішнє двійкове подання числа -1607.

Формат з плаваючою точкою використовує уявлення дійсного числа R у вигляді твору мантиси m на підставу системи числення n в деякій цілій степені p. яку називають порядком: R = m * n p.

Подання числа в формі з плаваючою крапкою неоднозначно. Наприклад, справедливі такі рівності:

12,345 = 0,0012345 × 10 4 = 1234,5 × 10 -2 = 0,12345 × 10 2

Найчастіше в ЕОМ використовують нормалізоване подання числа в формі з плаваючою крапкою. Мантиса в такому поданні повинна задовольняти умові:

0,1p Ј m <1p . Иначе говоря, мантисса меньше 1 и первая значащая цифра – не ноль (p – основание системы счисления).

У пам'яті комп'ютера мантиса представляється як ціле число, що містить тільки значущі цифри (0 цілих і кома не зберігаються), так для числа 12,345 в комірці пам'яті, відведеної для зберігання мантиси, буде збережено число 12 345. Для однозначного відновлення вихідного числа залишається зберегти тільки його порядок, в даному прикладі - це 2.

Кодування тексту.

Безліч символів, використовуваних при записі тексту, називається алфавітом. Кількість символів в алфавіті називається його потужністю.

Для представлення текстової інформації в комп'ютері найчастіше використовується алфавіт потужністю 256 символів. Один символ з такого алфавіту несе 8 біт інформації, т. К. 2 8 = 256. Але 8 біт складають один байт, отже, двійковий код кожного символу займає 1 байт пам'яті ЕОМ.

Всі символи такого алфавіту пронумеровані від 0 до 255, а кожному номеру відповідає 8-розрядний двійковий код від 00000000 до 11111111. Цей код є порядковим номером символу в двійковій системі числення.

Для різних типів ЕОМ і операційних систем використовуються різні таблиці кодування, що відрізняються порядком розміщення символів алфавіту в кодової таблиці. Міжнародним стандартом на персональних комп'ютерах є вже згадувана таблиця кодування ASCII.

Принцип послідовного кодування алфавіту полягає в тому, що в кодової таблиці ASCII латинські букви (великі та малі) розташовуються в алфавітному порядку. Розташування цифр також упорядковано за зростанням значень.

Стандартними в цій таблиці є тільки перші 128 символів, т. Е. Символи з номерами від нуля (двійковий код 00000000) до 127 (01111111). Сюди входять літери латинського алфавіту, цифри, розділові знаки, дужки і деякі інші символи. Решта 128 кодів, починаючи зі 128 (двійковий код 10000000) і кінчаючи 255 (11111111), використовуються для кодування букв національних алфавітів, символів псевдографіки і наукових символів.

Кодування графічної інформації.

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

Для чорно-білого зображення (без напівтонів) піксель може приймати тільки два значення: білий і чорний (світиться - не світиться), а для його кодування досить одного біта пам'яті: 1 - білий, 0 - чорний.