Структури даних і алгоритми. Лекція 1

Содержание

Слайд 2

Нова золота ера комп’ютерних архітектур

☹ Екстенсивне програмування (якнайшвидше
довільною ціною для 1

Нова золота ера комп’ютерних архітектур ☹ Екстенсивне програмування (якнайшвидше довільною ціною для
архітектури) – неефективне
☺ Вигідне оптимізоване програмування (мінімальні код,
пам’ять, енергоспоживання, максимальні швидкодія,
надійність для кількох архітектур)

Висновки

Слайд 3

Мета курсу «Структури даних і алгоритми»

Засвоїти поняття структури даних та алгоритму
Навчитись програмувати

Мета курсу «Структури даних і алгоритми» Засвоїти поняття структури даних та алгоритму
типові алгоритми з різними структурами даних

Слайд 4

Навчальні матеріали

https://kanyevsky.kpi.ua/студентам/алгоритми-і-структури-даних/

Навчальні матеріали https://kanyevsky.kpi.ua/студентам/алгоритми-і-структури-даних/

Слайд 5

Навчальні матеріали

Б. Керниган, Д. Ритчи. Язык программирования Си. 229 с.
Дж. Макконелл. Основы

Навчальні матеріали Б. Керниган, Д. Ритчи. Язык программирования Си. 229 с. Дж.
современных алгоритмов. 2004. 368 с.
Н. Н. Непейвода, И. Н. Скопин. Основания программирования. 2002. 919 с.

Слайд 6

Математичне забезпечення

Математичне забезпечення

Слайд 7

РСО

Залік в кінці семестру
5 лабораторних робіт, кожна до 12 балів
Модульна (залікова) контрольна

РСО Залік в кінці семестру 5 лабораторних робіт, кожна до 12 балів
робота до 40 балів
Для заліку потрібно здати усі лабораторні роботи

Слайд 8

Поняття алгоритму

Антикітерський механізм — древнєгрецький комп’ютер
виготовлений до 205 р. до н. е.
Обчислює (64 :

Поняття алгоритму Антикітерський механізм — древнєгрецький комп’ютер виготовлений до 205 р. до
38) * (48 : 24)*(127 : 32) = 254 : 19
та множення і додавання інших раціональних чисел

Слайд 9

Поняття алгоритму

Алгоритм — одне з фундаментальних понять інформатики

Сутність, суть — притаманна і

Поняття алгоритму Алгоритм — одне з фундаментальних понять інформатики Сутність, суть —
повторювана властивість об’єкта,
яку можна зафіксувати та відстежити раціональним чином.
Поняття — думка, що виділяє і узагальнює об’єкти за загальними
та специфічними для них ознаками, сутностями.
Визначення — введення поняття в міркування через комбінацію
елементарних або раніше визначених понять.
Термін — визначення поняття, яке є його назвою
у вигляді символа, слова чи словосполучення.

Слайд 10

Поняття алгоритму

Об’єкт — те, що можна уявити, створити, якось обробляти, зберігати, над

Поняття алгоритму Об’єкт — те, що можна уявити, створити, якось обробляти, зберігати,
чим можна щось виконувати.
Конструктивні об’єкти:
⧫ мають пряме (конструктивне) визначення, завжди існують або будуються (конструюються) за визначенням,
повинні чітко відрізнятись один від одного.
В обчислювальній техніці конструктивні об'єкти зберігаються в комірках пам'яті, представляють окремі біти, символи, слова, числа, а також більш складні об'єкти, тобто, структури даних.
Стан комп'ютера (моделі) - множина конструктивних об’єктів, яка зберігаються в пам’яті в даний момент часу.

Слайд 11

Поняття алгоритму

Обчислювальний процес - послідовність станів Sti моделі комп'ютера, яка розвивається у

Поняття алгоритму Обчислювальний процес - послідовність станів Sti моделі комп'ютера, яка розвивається
часі, що починається з початкового стану St0 і закінчується результуючим, кінцевим станом StN.

Слайд 12

Поняття алгоритму

Алгоритм — обчислювальний процес обчислення конкретної функції F в обчислювальній моделі,

Поняття алгоритму Алгоритм — обчислювальний процес обчислення конкретної функції F в обчислювальній
яка описується за допомогою строгих математичних понять.
Таке визначення було вперше запропоноване Е.Л. Постом і А. Т’юрінгом.

Обчислювальний
алгоритм

=

Слайд 13

Поняття алгоритму

Алгоритм — обчислювальний процес обчислення конкретної функції F в обчислювальній моделі,

Поняття алгоритму Алгоритм — обчислювальний процес обчислення конкретної функції F в обчислювальній
яка описується за допомогою строгих математичних понять.

Слайд 14

Поняття алгоритму

Машина Т’юринга – модель та алгоритм

нескінченна стрічка 0 1 0

Поняття алгоритму Машина Т’юринга – модель та алгоритм нескінченна стрічка 0 1
1 1 1 0

головка запису-читання

Таблиця
переходів
(автомат переходів)

Стан моделі Sti – стан стрічки і стан таблиці =
= конфігурація машини Т’юринга

Слайд 15

Поняття алгоритму

Блок-схема алгоритму

Модель – граф, у вершинах записані операції
Стан моделі Sti –

Поняття алгоритму Блок-схема алгоритму Модель – граф, у вершинах записані операції Стан
активна вершина (куди вказує палець)
і стани змінних, які слід пам’ятати
або записати деінде

a = 10
b = 15
c = 20

Слайд 16

Поняття алгоритму

Архітектура комп’ютера

Програма
a=b+c;
if (a)
d = a;

Модель = архітектура
Стан моделі

Поняття алгоритму Архітектура комп’ютера Програма a=b+c; if (a) d = a; Модель
Sti – стан пам’яті даних та лічильника команд

Архітектура

Лічильник
команд

Пам’ять
даних
a, b, c, d

Слайд 17

Поняття архітектури

Архітектура комп’ютера

Розробку комп'ютерів IBM360 з 1961 р. вели
Джин Амдал, Джерріт

Поняття архітектури Архітектура комп’ютера Розробку комп'ютерів IBM360 з 1961 р. вели Джин
Блау і Фредерік Брукс
якими було впроваджено
поняття архітектури комп'ютерів:
“Архітектура комп'ютерної системи
це мінімальний набір властивостей,
що визначають, які програми
будуть працювати в системі
і які результати вони дадуть.”

Слайд 18

Поняття архітектури

Архітектура — це модель реального комп'ютера з рівнем деталізації, який є

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

Слайд 19

Поняття архітектури

Архітектурна платформа — це загальна комп'ютерна архітектура, яка є гарантовано незмінною

Поняття архітектури Архітектурна платформа — це загальна комп'ютерна архітектура, яка є гарантовано
протягом наступних кількох років чи десятирічь
Відомі архітектурні платформи
— i80x86. чи Intel IA-32
— i80x64. чи Intel IA-64
— ARM
— RISCV
Архітектурна парадигма — набір сталих загальних принципів і підходів для проектування окремого виду комп'ютерних архітектур.
Наприклад: архітектура фон Неймана, RISC-архітектура, MIMD-архітектура, архітектура клієнт-сервер.
Имя файла: Структури-даних-і-алгоритми.-Лекція-1.pptx
Количество просмотров: 35
Количество скачиваний: 0