вона дуже дорога. До того ж пам'ять є тимчасовою – якщо струм зникає, усе, що зберігається у пам'яті теж зникає. Для того, щоб утримати великі об’єми даних доступними у комп’ютерній системі, на постійному носієві, але за більш прийнятною ціною ніж основна пам'ять, до всіх, окрім найкрихітніших комп’ютерних систем було додано файловий пристрій – іноді його ще називають вторинною пам’яттю або вторинним запам’ятовуючим пристроєм [32].
Широкі стрілки на Рис. 1 Додатку А ілюструють, що дані можуть бути переміщені з певних чарунок пам'яті до файлу, і що дані можуть бути перетягнені з файлів до певних чарунок пам'яті. Незручністю файлів є те, що процес запам’ятовування даних у файл чи переміщення даних з файлу до пам'яті є відносно швидкості обчислень комп’ютера досить повільним. Залежно від типу файлів, час запам’ятовування/перетягання може варіювати від долі секунди до декількох хвилин. Тим не менше, ми віддаємо перевагу уживатись з цією незручністю і мати змогу зберігати величезні об’єми інформації за прийнятною ціною за байт (чи символ). Комп’ютерні файли поділяються на два базові типи – файли послідовного і прямого доступу [31]. У файлах послідовного доступу, всі записи, які створюють файл запам’ятовуються послідовно, відповідно до ключа управління може ще називатись ідентифікатором одного або декількох записів файла даних; ключовим полем, індексним полем. файлом. Наприклад, файл списків міститиме один запис для кожного робітника. Всередині файлу немає адрес. Для того щоб знайти конкретний запис, файловий пристрій мусить читати кожен запис послідовного файлу з початку до потрібного. Зрозуміло, що цей метод пошуку окремого запису може забирати багато часу, особливо якщо послідовний файл є довгим, а потрібний запис десь наприкінці. Файли послідовного доступу зазвичай запам’ятовуються на магнітних стрічках. Файл прямого доступу, записаний на запам’ятовуючому пристрої з прямим доступом чи ЗППД [31], є файлом з якого комп’ютер може отримати запис негайно, не надаючи значення місцезнаходженню запису у файлі. Типовий ЗППД для великих комп’ютерів складається з набору дисків, що постійно обертаються, нагадуючи фотозаписи. Прикладом дуже великого ЗППД є модель IBM 3390 B3C, що може зберігати до 34,05 мільярдів байтів (чи використовуючи скорочене представлення, 34,05 Гбайтів), зі швидкістю передачі з диску до пам'яті 4,2 мільйони байтів (Мбайтів) за секунду. Ціна такого файлу є менше 10 $ за мільйон байтів ємності [31].
На відміну від цих нерухомих, великомістких, об'єктивно дорогих файлів, файли прямого доступу також можуть бути рухомі, відносно невеликі і досить дешеві. Фізичний файл розділяється на чарунки, кожна з яких має адресу. Ці чарунки є подібними до чарунок пам'яті, за винятком того, що вони значно більші – зазвичай достатньо великі для того, щоб зберігати кілька записів в одній чарунці. Через те, що існує ця адреса, комп’ютер може запам’ятати запис в адресу конкретного файлу, а тоді відновити той запис запам’ятавши адресу. Таким чином, комп’ютер може звертатись безпосередньо до файлової адреси потрібного запису, не потребуючи зчитування послідовно збережених записів до того, як натрапить на потрібний.
Блок управління
Ключовим є блок управління. Він забезпечує контроль, який дозволяє комп’ютеру скористатися швидкістю та ємністю інших компонентів. Тонкі стрілки на Рис. 1. Додатку А вказують, що кожен з інших п’яти компонентів контролюється блоком управління.
Є точний перелік операцій, які блок управління має виконати. Цей перелік операцій, який називається програмою [32], зберігається у пам'яті комп’ютера, як і дані. У кожний період часу один елемент з цього переліку переміщається з пам'яті до блоку управління, інтерпретується блоком і виконується. Блок управління працює з цілим переліком операцій на швидкості електронів, ніж чекаючи доки користувач скаже, що робити далі. Те, що було щойно описане, називається поняття „програма в пам'яті” [31], що є найвагомішою ідеєю в усій обчислювальній техніці.
1.4.2 Програмне забезпечення (ПЗ)
Програмне забезпечення (software) та апаратне забезпечення (hardware) – це дві комплементарні компоненти комп'ютера [21], причому межа між ними не є чіткою, бо деякі фрагменти програмного забезпечення на практиці реалізуються суто апаратурою мікросхем комп'ютера, а програмне забезпечення, в свою чергу, здатне виконувати (емулювати) функції електронної апаратури [26]. Але, по суті, призначення програмного забезпечення полягає в керуванні як самим комп'ютером так і іншими програмами та маніпулюванні інформацією. Для розкриття поняття ПЗ слід також розглянути поняття алгоритму, блок-схеми та програми.
Поняття алгоритму належить до первісних понять , таких, як поняття чи . Обчислювальні процеси алгоритмічного характеру (арифметичні дії над цілими числами, знаходження найбільшого спільного дільника двох чисел і т. п.) відомі людству з глибокої давнини. Проте в явному вигляді поняття алгоритму сформувалося лише на початку . Алгоритм (algorithm) – це послідовність точно визначених дій, що ведуть від варіацій початкових даних до шуканого результату [32]. При написанні комп'ютерних програм алгоритм описує логічну послідовність операцій. Для візуального зображення алгоритмів часто використовують .
Під алгоритмом звичайно розуміють скінченну множину точно визначених правил для чисто механічного розв’язку задач певного класу [21]. Таке формулювання можна розглядати тільки як пояснення, а не як визначення, тому що поняття алгоритму в силу його первісності не можна виразити через інші поняття математики. Для подальшого уточнення поняття алгоритму Пелещишин А.М. та Буров Є.В. виділяють такі його характерні властивості [23]:
фінітність - алгоритм є скінченним об'єктом, що є необхідною умовою його механічної реалізованості;
масовість - початкові дані для алгоритму можна вибирати із певної (можливо, нескінченної) множини даних, а це означає, що алгоритм