- •Тема 1 Вступ
- •Походження обчислювальних машин
- •Еволюція комп’ютерних наук
- •Роль абстракції в комп’ютерних науках
- •Тема 2 Зберігання даних
- •Зберігання бітів у вентилях і тригерах
- •Зберігання бітів в магнітному осерді .
- •3) Шістнадцяткова система числення
- •7) Основна пам'ять комп’ютера.
- •8) Магнітні диски.
- •9) Компакт диски.
- •10) Магнітні стрічки
- •Тема 3. Обробка даних
- •Центральний процесор.
- •2)Регістри центрального процесора і кеш пам'ять.
- •3) Інтерфейс між центральним процесором та основною пам’яттю.
- •4) Машинні процедури та cisc-і risc-архітектура комп'ютерів
- •5) Інструкції передачі даних
- •6) Арифметично-логічні інструкції та інструкції управління
- •7) Концепція збереженої програми і представлення машинних інструкцій бітовими комбінаціями.
- •8) Машинний код і кодування інструкцій типового комп’ютера.
- •9) Формат поля операндів.
- •10) Загальний процес виконання програми.
- •12) Програми і дані
- •Тема 4. Операційні системи
- •1)Поняття і приклади операційних систем
- •2) Еволюція операційних систем
- •3) Пакетна обробка даних
- •4) Інтерактивна обробка даних
- •7) Компоненти операційної системи – файловий менеджер
- •8) Компоненти операційної системи – менеджер пам’яті
- •9) Компоненти операційної системи – драйвери пристроїв
- •10) Архітектура операційних систем – класифікація програмного забезпечення
- •13)Запуск операційної системи
- •14)Координація роботи комп’ютера - процеси і міжпроцесна взаємодія
- •15)Координація роботи комп’ютера - диспетчеризація
- •16)Модель "клієнт / сервер"
- •Тема 5 Сітьова передача даних та Інтернет
- •Поняття комп’ютерної мережі.
- •Різновиди комп’ютерних мереж
- •Мережеві топології
- •Протоколи комп’ютерних мереж
- •5)Об’єднання комп’ютерних мереж - повторювачі, мости та комутатори
- •6)Об’єднання комп’ютерних мереж – маршрутизатор
- •7)Технологія Ethernet
- •8)Міжпроцесна взаємодія в комп’ютерних мережах
- •9)Модель "клієнт / сервер" в комп’ютерних мережах
- •10)Однорангові комп’ютерні мережі
- •11)Internet - поняття та історія
- •12)Internet – архітектура
- •13)Internet – підключення
- •14)Internet – адресація
- •15)Internet – застосування
- •16)World Wide Web – концепція
- •17)World Wide Web - реалізація
- •20)Internet - протоколи - рівневий підхід до програмного забезпечення
- •21)Internet - протоколи tcp/ip, udp
- •22)Безпека Internet - основні методи захисту
- •23)Безпека Internet – шифрування
- •24)Засоби правового захисту для безпеки комп'ютерних мереж
- •Тема 6. Алгоритми
- •Тема 8. Технологія розробки програмного забезпечення
- •Предмет технологій розробки програмного забезпечення.
- •Життєвий цикл програмного забезпечення – модульність.
- •Етапи розробки програмного забезпечення, які передбачено у моделі водоспаду.
- •6)Шаблони проектування програмного забезпечення
- •Які особливості застосування моделі швидкої розробки програмного забезпечення
- •Тестування програмного забезпечення
- •10) Документація програмного забезпечення
- •11) Право власності та відповідальність за створюване програмне забезпечення
- •Тема 9. Структури даних
- •Масиви даних
- •Списки даних – вказівники.
- •Списки даних – безперервні списки.
- •Списки даних – зв’язні списки.
- •Поняття стеку.
- •Стеки – механізм повернення.
- •Стеки – реалізація стеків.
- •Поняття черги
- •Деревовидні структури
- •Пакет реалізації бінарних дерев
- •Тема 10. Структури баз даних
- •Основні поняття бази даних
- •Багаторівневий підхід до реалізації баз даних
- •Реляційна модель баз даних
- •Реляційні операції
- •Реляційна модель бд – реляційне проектування
- •Мова sql
- •Об'єктно-орієнтовані бази даних
- •Забезпечення цілісності бд - протокол фіксації / відкоту змін в бд
- •Вплив технологій баз даних на суспільство
- •Тема 11. Штучний інтелект
- •Що таке штучний інтелект
- •Розпізнавання зображень
- •Система породження
- •Дерева пошуку
- •Евристичні методи
- •Властивості штучних нейронних мереж
- •Застосування теорії штучного інтелекту – опрацювання мови.
- •Застосування теорії штучного інтелекту - робототехніка.
- •Генетичні алгоритми
- •Поняття експертних систем
- •Наслідки розвитку штучного інтелекту
- •Тема 12. Теорія обчислень
- •1.Найпростіша мова програмування
- •2.Найпростіша мова програмування – оператори опису даних.
- •3.Найпростіша мова програмування – імперативні оператори.
- •4.Можливості програм, написаних на найпростішому мові
- •5.Поняття Машини Тюрінга
- •6.Поняття обчислюваних функцій
- •7.Теза Черча-Тьюринга
- •8.Універсальність найпростішої мови програмування
- •9.Необчислювані функції
- •13.Криптографія з використанням відкритих ключів
- •Тема 7. Мови програмування
- •Парадигми програмування.
- •Концепції традиційного програмування - змінні, константи і літерали.
- •Концепції традиційного програмування – типи даних.
- •Поняття структури даних
- •Оператори присвоєння.
- •Процедури і їх параметри.
- •Поняття функції.
- •Об’єктно-орієнтоване програмування
- •Декларативне програмування
- •Програмування паралельних процесів
- •Мова prolog це 12 питання
5) Інструкції передачі даних
Група передачі даних складається з команд, які опрацьовують переміщення даних з одного місця в інше
В цю категорію потрапляють кроки 1, 2 і 4 на Рис. 3.2
Слід зазначити, що використання таких термінів, як передача або переміщення для ідентифікації цієї групи команд насправді неправильним
Зазвичай рідко коли передані дані стираються у джерелі розташування
Процес, пов'язаний з передачею інструкції більше нагадує копіювання даних, а не її переміщення
Таким чином такі терміни, як копіювання або клонування краще описують дії цієї групи команд
Говорячи про термінологію, слід зазначити, що спеціальні терміни використовуються коли мова йде про передачу даних між процесором і основною пам'яттю
Запит на заповнення регістрів загального призначення вмістом комірки пам'яті зазвичай називають інструкцією LOAD;
відповідно, запит на передачу вмісту регістру, до комірки пам'яті називається інструкцією STORE
6) Арифметично-логічні інструкції та інструкції управління
Арифметично-логічна група складається з інструкцій, які надсилають блоку управління запити щодо діяльності АЛП
В цю групу потрапляє крок 3 на Рис. 3.2
Як випливає з назви, АЛП, здатний виконувати додаткові операції, крім основних арифметичних
Деякі з цих додаткових операцій є логічними операціями AND, OR і XOR, які розглядалися у лекції 2, і про які ми поговоримо більш докладно далі
Ще одна збірка операцій, доступних в більшості АЛП дозволяє вмісту регістрів переміщувати регістр вправо або вліво
Ці операції відомі як SHIFT або ROTATE, залежно від того, які біти "попадають в кінець" регістра і просто відкидаються (SHIFT) або використовуються для заповнення проміжків лівої сторони на іншому кінці (ROTATE)
Група управління складається з тих інструкцій, які визначають виконання програми, а не маніпулювання даними
елементарний приклад
Ця група містить багато більше цікавих інструкцій у машинному наборі, такі як сімейство JUMP (або BRANCH) інструкції використовуються для вказання блоку управління хід виконання інструкцій, крім наступного у списку
Інструкції JUMP з'являються у двох варіантах:
безумовні переходи і умовні переходи
Прикладом першого буде інструкція "перейдіть до кроку 5"; Прикладом останнього буде: "Якщо отримане значення дорівнює 0, то переходьте до кроку 5"
Різниця в тому, що результати умовних переходів "зміна місця проведення", відбуватиметься тільки якщо виконується певна умова
Наприклад, послідовність інструкцій на малюнку 3.3 представляє алгоритм ділення двох значень, де Крок 3 умовний перехід, який захищає від можливості ділення на нуль
7) Концепція збереженої програми і представлення машинних інструкцій бітовими комбінаціями.
Ранні моделі обчислювальних пристроїв не відрізнялись особливою гнучкістю
Прорив на початку 40 рр попереднього століття (John P.Eckert- John von Neuman) стався з усвідомленням того, що програма, як і дані, можуть бути закодовані і збережені в пам'яті
Якщо вузол управління призначений для отримання програми з пам'яті, декодування інструкцій і їх виконання
тоді програма, що її виконує машина, може бути змінена тільки шляхом зміни вмісту пам'яті комп'ютера замість перекодування елементу управління
Ідея зберігання програми комп'ютера в його основній пам'яті називається концепцією збереженої програми і стала стандартним сучасним підходом
Початковим ускладненням стало мислення відмінностей між програмами і даними, адже:
Дані зберігалися у пам'яті;
Програми були частиною блоку управління
Закодована версія машинної інструкції складається з двох частин:
поля оп-коду (скорочення від коду операції) і поля операнду
Шаблони бітів, що входять в поле оп-коду визначає одну з елементарних операцій, таких як STORE, SHIFT, XOR, і JUMP, необхідні інструкції
Шаблони бітів, які містяться в полі операнду надають більш детальну інформацію про операцію, яка визначена оп-кодом
Наприклад, у випадку операції STORE, інформації в області операнду вказує, який регістр містить дані для збереження, та які елементи пам'яті використовуються для отримання даних
