- •Тема 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 питання
13.Криптографія з використанням відкритих ключів
У 1976 р. У. Діффі та М. Хеллманом [DH76] було запропоновано новий тип криптографічного системи - система з відкритим ключем [public key cryptosystem]. У схемі з відкритим ключем є два ключі, відкритий [public] і секретний [private, secret], обрані таким чином, що їх послідовне застосування до масиву даних залишає цей масив без змін. Шифруюча процедура використовує відкритий ключ, що дешифрує - секретний. Дешифрування коду без знання секретного ключа практично нездійсненно; зокрема, практично нерозв'язна задача обчислення секретного ключа за відомим відкритому ключу. Основна перевага криптографії з відкритим ключем - спрощений механізм обміну ключами. При здійсненні комунікації по каналу зв'язку передається тільки відкритий ключ, що робить можливим використання для цієї мети звичайного каналу і усуває потребу в спеціальному захищеному каналу для передачі ключа.
Тема 7. Мови програмування
Парадигми програмування.
Імперативні парадигми, також відомі як процедурні парадигми, являють собою традиційний підхід до процесу програмування. Це парадигма, на якій заснована псевдокод, а також машинну мову .
Декларативний парадигми - просить програміста описати, проблеми що вирішується, а не алгоритм, за яким необхідно слідувати . декларативне програмування застосовується для систем загального призначення, вирішення проблем алгоритмів для вирішення завдань, представлених йому
Функціональної парадигми - ось програма розглядається як обєкт, яка бере входи і виробляє виходи. В рамках цієї парадигми програма побудована за меншою підключення зумовлених одиниць програм (стандартних функцій), так що виходи кожного пристрою використовуються як входи іншого пристрою таким чином, що шуканий загальний вхід-вихід відносин виходить .
Об'єктно-орієнтованої парадигми, пов'язана з процес програмуванням, званим об'єктно-орієнтоване програмування . У цієї парадигми, система розглядається як сукупність одиниць, які називаються об'єкти, кожен з яких здатен виконувати дії, які безпосередньо пов'язані з між собою, а також запитуючої дії інших об'єктів .
Концепції традиційного програмування - змінні, константи і літерали.
Мови високого рівня програмування мають місця в основній пам'яті, на яку посилаються описові імена, а не числові адреси .Таку назву відому як змінна, на знак визнання того факту, що, змінивши значення зберігається в місці, пов'язаним з ім'ям змінної, коли виконується програма . Ці декларативні заяви також вимагають, щоб програміст описував тип даних, які будуть зберігатися в пам'яті, пов'язаних із змінною .
Концепції традиційного програмування – типи даних.
На додаток до типу даних, змінні в програмі часто пов'язані з структурою даних, яка є концептуальною формою і розташуванням даних .
Поняття структури даних
Один з поширених структур даних є однорідний масив, який являє собою блок значень одного і того ж типу, таких як одновимірний список, двовимірну таблицю, рядки і стовпці або таблиці з більш високими розмірами. Для створення такого масиву в програмі, більшість мов програмування вимагають, щоб описати, ім'я масиву також вказати довжину кожного вимірювання масиву . Наприклад, Рисунок 7.4 показує концептуальну структуру оголошення - int Scores [2] [9];
Такий масиву буде оголошений так: struct {char Name[25];int Age;float SkillRating;} Employee;
