Команди процесора
План
Основи програмування
Тема 1.
Самостійна робота студентів:
1. Складання і виконання алгоритму
2. Істинні та хибні висловлювання
3. Заперечення висловлювання. Логічне слідування
Лекція
Основні поняття програмування
1.Поняття програми як автоматизованої системи. Складові програми: дані, логіка, інтерфейс.
2.Команди та виконавці. Вимоги до команд.
3.Поняття алгоритму. Алгоритми та їх виконавці. Складання і виконання алгоритмів. Поняття лінійного алгоритму. Блок–схема лінійного алгоритму.
4.Поняття розгалуження.
5.Поняття циклу.
6.Істині та хибні висловлювання. Заперечення висловлювання. Логічне слідування
Література
1. Гуржій А.М., Львов М.С., Співаковський О.В. Основи програмування, 2004, 355 с.
2. Караванова Т.П. Інформатика. Основи алгоритмізації та програмування (процедурне програмування) (навчальний посібник), 10-11 кл.,-К.:Форум, 2002.-289 с., с. 7-59
3. Клименко О.Ф., Головко Н.Р., Шарапов О.Д. Інформатика та комп’ютерна техніка (навчально-методичний посібник).- К.;КНЕУ, 2002.- 534 с., 196-200
4. Малярчук С.М. Основи інформатики у визначеннях, таблицях і схемах: Довідково-навчальний посібник/Під ред. Н.В. Олефіренко. – Х.: Веста: Вид-во “Ранок”, 2005. – 112 с., с. 88-109
5. Ривкінд Й.Я., Т.І. Лисенко, Л.А.Чернікова, В.В.Шакотько. Інформатика 11 клас. Підручник для загальноосвітніх навчальних закладів. Рівень стандарту.-К.: "Генеза", 2011.-300 с., с. 20-68
6. Логiка: посiбник для студентiв заочного вiддiлення : навч. посiбн./ Н.П.Козаченко. - Кривий Рiг : КПI ДВНЗ «КНУ», 2012. - 42 с.
1. Поняття програми як автоматизованої системи. Складові програми: дані, логіка, інтерфейс.
Сучасна людина успішно користується численними технічними системами, не замислюючись над їхньою внутрішньою будовою. Не становлять винятку і програми, які є різновидом інформаційних технічних систем. І хоча досконало розуміти роботу сотень засобів і механізмів непотрібно та неможливо, мати загальні уявлення про їхню структуру та принципи функціонування корисно і цікаво. Наприклад, водієві не обов’язково знати, як функціонує двигун внутрішнього згорання чи система подачі палива, однак він повинен принаймні відрізняти бензобак від бачка для омивання скла, мати уявлення про коробку передач та вміти виміряти рівень масла у двигуні.
Із курсу інформатики ми з вами пам’ятаємо 2 складові інформаційної системи:
Із схеми видно, що інформаційна система не може повнофункціонально діяти без взаємодії програмної та апаратної складових.
До цього часу вже користувалися готовими програмними продуктами, які дозволяли виконувати певні дії та розв’язували наші задачі. Але ми не розглядали їхню внутрішню будову, тобто не бачили сам програмний код.
Розглянемо необхідні нам означення.
Програмування— процес створення комп’ютерної програми
Мова програмування (англ. Programming language) — певна штучна (формальна) система позначень для опису алгоритмів та структур даних.
Програма — це складова інформаційної системи, що виконує обробку даних та може визначати поведінку системи.
Слід зауважити, що дії програм можуть бути різними залежно від обставин, у яких вони виконуються. Наприклад, якщо в MS Word не виділено фрагмента тексту і ми натискаємо клавішу Del, то буде видалено лише один символ, якщо фрагмент був виділений, то видалений буде він увесь. Таким чином, програми не просто виконують дії, а реалізують певну логіку дій.
Машинні коди— набір двійкових кодів для роботи центрального процесора конкретного типу.
Мова асемблеру— це мова, що перекладає зрозумілі людині символи-мнемоніки в машинні коди. Мови асемблерів, як і машинні коди, є машинно-залежними мовами.
Мова програмування високого рівня (МВР)— мова, яка складається з операторів, схожих на звичайні слова. Програми на таких мовах дозволяють формулювати завдання для комп’ютера у звичних для людини категоріях.
Системи візуального програмування— засоби, за допомогою яких можна швидко створити працюючу програму шляхом візуального проектування її макету в графічному вигляді. Найбільш розповсюдженими є системи Visual
Basic, Visual C, Delphi.
Наявність сотень мов програмування і їхніх діалектів пояснюється різноманітністю сфер застосування комп’ютерів і підходів до реалізації програм.
Транслятор— програма, що перетворює програму, написану мовою асемблеру або МВР, в машинні коди. Транслятори поділяються на дві категорії: інтерпретатори і компілятори.
Інтерпретаторперетворює невеликий фрагмент вихідної програми в машинні коди і, лише дочекавшись, коли процесор їх виконає, переходить до обробки наступного фрагмента.
Компілятортранслює відразу всю програму в машинні коди і вміщує їх в пам’ять комп’ютера, не виконуючи. Відкомпільовану програму можна зберегти.
Інтегроване середовище програмування— це система програмування, що суміщає редактор для зручного введення і редагування програми, транслятор і налагоджувач помилок.
Основними складовими програми є:
Логіка визначає поведінку програми, тобто алгоритм її роботи.
Дані— умова задачі. Нам щось відомо, і ми маємо отримати певний результат.
Інтерфейс — це засіб взаємодії програми з користувачем та іншими програмами.
2. Команди та виконавці. Вимоги до команд.
У програмуванні, команда - це наказ комп'ютерній програмі діяти як деякий інтерпретатор для вирішення задачі. У загальнішому випадку, команда - це зазначення деякому інтерфейсу (наприклад командній оболонці) командного рядка.
Зокрема, термін команда використовується в мовах імперативного програмування. Ці мови названі так, тому що їх оператори, як правило, пишуться на зразок наказового дієслова що використовується у багатьох природних мовах. Якщо дивитися на оператор імперативної мови як речення природної мови, то команда, в загальному, подібна до дієслова.
Команди вибору, повторення і переходу безпосередньо не вказують на перетворення даних, а лише на управління послідовністю цих перетворень. Тому їх називають командами управління. Очевидно, що команди управління мають входити до системи команд будь-якого виконавця, що претендує на універсальність у деякій предметній області.
Команди розгалуження дозволяють направити виконання алгоритму по тому або іншому шляху в залежності від виконання умови. Такі команди називають командами вибору.
Команди вибору містять в собі інші команди, що виконуються в залежності від результатів перевірки умов.
Виконання команди переходу полягає в тому, що Виконавець переходить до виконання команди, позначеної міткою N (порушуючи при цьому природну послідовність виконання команд).
Команди процесора - команди на самому низькому рівні програмування ( Асемблер). Їх можна розділити на 5 груп:
· команди переносу даних, які виконують перенос даних між регістрами чи між регістрами та пам'яттю;
· арифметичні команди, які включають в себе команди додавання, віднімання чи зменшення на одиницю (декрементування) даних у реєстрах чи пам'яті;
· логічні команди, які дозволяють виконувати такі логічні операції як порівняння, зсув чи взяття додаткового числа у реєстрах чи пам'яті;
· команди передачі керування, які забезпечують безумовну чи умовну передачу керування, а також виклик та повернення з підпрограм;
· команди керування та команди роботи зі стеком, які організують введення — виведення даних, доступ до стека та внутрішнього Регістра ознак процесора.
Вимоги до команд