- •Архітектура та програмне забезпечення комп’ютера Програмування як наукова дисципліна і професійна діяльність
- •Архітектурні особливості комп'ютерів Класична структура комп’ютера
- •Поняття архітектури комп’ютера
- •Технологія виконання команд мікропроцесором
- •Арифметичні основи комп’ютера
- •Загальні відомості про системи числення
- •Системи числення, застосовувані в комп’ютерах
- •Переведення чисел із однієї позиційної системи числення в іншу
- •Подання даних в комп’ютері Структура внутрішньої пам’яті комп’ютера
- •Подання числових даних
- •Кодування чисел
- •Двійкова арифметика в комп'ютерах
- •Кодування текстових даних
- •Кодування графічних даних
- •Кодування звукової інформації
- •Види програмного забезпечення комп'ютерів Класифікація програмного забезпечення
- •Основи роботи операційних систем
Поняття архітектури комп’ютера
Структура комп'ютера, у тому числі і функціональна, визначає конкретний його склад на деякому рівні деталізації (пристрої, блоки, вузли, тощо) і описує всі внутрішні зв'язки. Однак, структуру комп'ютера слід відрізняти від його архітектури. Під цим терміном розуміють сукупність логічних і фізичних принципів організації роботи комп'ютера (рис. 3).
Рис. 3. Основні компоненти архітектури комп'ютера
Основоположні принципи логічного устрою комп'ютера також сформульовані Дж. фон Нейманом. Вони передбачають:
використання для кодування інформації у комп’ютері двійкової системи числення,
програмне керування роботою комп'ютера,
однорідність пам’яті,
адресаціюпам’яті.
Принцип використання для кодування інформаціїдвійкової системи числення. Передбачає використання для представлення даних і команд у комп’ютері двійковоїсистеми числення.
Загалом під системою численнярозуміють сукупність прийомів і правил найменування та позначення чисел. У повсякденній практиці використовується десяткова система числення, що базується на використанні в якості умовних знаків для запису чисел цифр від 0 до 9. У двійковій же системі числення для представлення чисел використовується всього дві цифри: 0 та 1. Їх називають двійковими цифрами абобітами(від англ. binary digit).
Такий код дуже зручний для представлення інформації у комп’ютері, що обумовлюється простотою його реалізації з технічної точки зору: намагнічена ділянка поверхні ототожнюється з 1, а ненамагнічена - з 0; високий рівень напруги приймається за 1, низький – за 0, тощо. Тому двійковий код також називають машинним кодом.
Одним бітом можуть бути закодовані два різних значення: 0або 1. Якщо кількість бітів збільшити до двох, то ними можна уже виразити чотири незалежні значення:00, 01, 10, 11. Трьома бітами можна закодувати вісім різних значень:000, 001, 010, 01l, 100, 101, 110,111. У загальному випадку кількість незалежних значень (N) визначається розрядністю числа (m) за наступною формулою:
N =2m.
Тобто, збільшення на одиницю кількості розрядів числа збільшує кількість його незалежних значень в 2 рази.
Також досить просто виконуються в двійковій системі числення арифметичні і логічні операції. Зокрема правила виконання арифметичних дій у двійковій системі числення є наступними:
0 + 0 = 0 0 * 0 = 0
0 + 1 = 1 0 * 1 = 0
1 + 0 = 1 1 * 0 = 0
1 + 1 = 10 1 * 1 = 1
Послідовність із 8 бітів утворює байт. За допомогою байта можна закодувати 256 (28) незалежних значень.
Для вимірювання кількості інформації використовують також:
Кілобайт (Кбайт). 1 Кбайт = 210байт = 1024байт..
Мегабайт (Мбайт). 1Мбайт = 1024 Кбайт =220байт.
Гігабайт (Гбайт). 1Гбайт = 1024Мбайт = 230байт.
Терабайт(Тбайт). 1Тбайт = 1024Гбайт = 240байт.
Для порівняння:одна сторінка неформатованого машинного тексту становить біля 2 Кбайт; книга із 500 сторінок тексту без малюнків містить приблизно 1Мбайт інформації.
Принцип програмного керування роботою комп'ютера. Передбачає, що будь-яка послідовність дій, яку потрібно виконати за допомогою комп’ютера, оформляється у виглядіпрограми, яка складається з окремихкоманді послідовно (у сенсі черговості цих команд) виконується за допомогою деякого наборуоперацій, які здатен автоматично виконати даний комп'ютер.
Принцип однорідності пам’яті. Передбачає використання пам'яті для зберігання як програм, так і даних. При цьому і команди програми, і дані кодуються у двійковій системі числення.
Використання єдиної області пам'яті дозволяє оперативно перерозподіляти ресурси між областями програм і даних, що істотно підвищує гнучкість комп'ютера з точки зору розробника програмного забезпечення.
Принцип адресації пам’яті. Структурно пам'ять комп'ютераскладаєтьсяз комірок, які служать для зберігання інформації (двійкового коду). Кожна комірка має свій порядковий номер -адресу.Число, що зберігається в комірці, — це її значення або вміст. Якщо в k-й комірці міститься, наприклад, число m, то прийнято говорити «вміст комірки за адресою k дорівнює m». Даний принцип передбачає, що убудь-який момент можна звернутися за адресою до будь-якої комірки пам'яті.
Розрізняють два основних типи архітектур: Прінстонська, яка часто називається архітектурою фон Неймана, іГарвардська. Різниця між ними полягає у тому, що в класичній фон-нейманівській архітектурі комп’ютера програми і дані зберігаються в загальній ОП і передаються в процесор по одному каналу (шині даних і управління), тоді як Гарвардська архітектура передбачає використання роздільних адресних просторів для зберігання команд і даних, а також окремі потоки передачі для команд і даних (рис. 4 а, б).
-
а)
б)
Рис. 4. Основні типи архітектур комп'ютера
Переваги фон-нейманівської архітектури:
спрощення устрою мікропроцесора, так як реалізується звертання тільки до загальної ОП;
використання єдиної області пам'яті дозволяє оперативно перерозподіляти ресурси між областями програм і даних, що істотно підвищує гнучкість мікропроцесора.
Переваги Гарвардської архітектури:
застосування невеликих за обсягом пам'яті даних сприяє прискоренню пошуку інформації в пам'яті і збільшує швидкодію мікропроцесора;
наявність окремих шини даних і шини команд також дозволяє підвищити швидкодію мікропроцесора;
з’являється можливість організувати паралельне виконання програм (кожна пам'ять з'єднується з процесором окремої шиною, що дозволяє одночасно з читанням/записом даних при виконанні поточної команди робити вибірку і декодування наступної команди).
Недоліком Гарвардської архітектури є ускладнення архітектури мікропроцесора і необхідність генерації додаткових керуючих сигналів для пам'яті команд і пам'яті даних.
Сучасний підхід передбачає, що в основі побудови однопроцесорних комп'ютерів, як і раніше, лежать принципи фон Неймана, хоча і значно модифіковані. Багатопроцесорні ж комп'ютерні системи, здатні здійснювати паралельні обчислення, базуються на Гарвардській архітектурі.