Поняття мови програмування

Download Report

Transcript Поняття мови програмування

Slide 1

Основи алгоритмізації та
програмування

Поняття програми.
Мови програмування.


Slide 2

Exit

Вступ
Якщо ми хочемо розв'язати задачу за
допомогою комп'ютера, то нам слід створити
алгоритм, який здатен він виконати, а потім
передати цей алгоритм комп'ютеру для
виконання.
Іншими словами – ми повинні мати засіб
спілкування з комп'ютером. А, як відомо, засіб
спілкування – це мова.


Slide 3

Exit

Спілкування
В повсякденному житті кожної людини є потреба у
спілкуванні з іншими людьми – об'єктами спілкування.
Спілкування є процесом обміну інформацією.
Ви вже знаєте про такі види спілкування, як:
монолог – однонаправлений процес передачі інформації,
коли один об'єкт спілкування постійно є джерелом
інформації, інший об'єкт, або інші об'єкти є споживачами
інформації;
діалог – двонаправлений процес, коли об'єкти спілкування
обмінюються функціями – по черзі стають то джерелом, то
споживачем інформації.


Slide 4

Exit

Об'єкти спілкування
Хто або що може бути об'єктами спілкування?
Зрозуміло, що об'єктами спілкування можуть бути люди.
Але тільки вони, чи, можливо, є й інші об'єкти?
Якщо уважно придивитися до поведінки тварин, то можна
дійти висновку, що вони також спілкуються як між собою, так
і з людиною, подаючи сигнали про свої бажання, а також
розуміють певні сигнали людини.
Об'єктом спілкування також може бути машина. Яким
чином? – запитаєте ви. А пригадайте, що автомобілі,
наприклад, мають панель приладів, за допомогою якої
машина повідомляє водія про швидкість руху, запас палива,
рівень мастила та інше. А водій, в свою чергу, наприклад,
натиснувши кнопку, передає машині сигнал увімкнути
кондиціонер, або зачинити вікна, замки, тощо.


Slide 5

Exit

Комп'ютер як об'єкт
спілкування
Одним із видів машин є комп'ютери. Раніше було прийнято
називати комп'ютери електронними обчислювальними
машинами (ЕОМ). Чому саме обчислювальними, ми з'ясуємо
пізніше. А от машиною комп'ютер називають тому, що, як інші
машини, комп'ютери створюють для полегшення праці людини, або
обслуговування її потреб, надання певних послуг.
Ви маєте певний досвід роботи на комп'ютері і знаєте, що
комп'ютер здатен сприймати інформацію, реагувати на неї та
виводити інформацію у зрозумілій людині формі. Ці здатності
комп'ютера постійно розвиваються і розширюються. Перші
комп'ютери сприймали та виводили інформацію тільки у вигляді
спеціальних кодів, зрозумілих тільки групі спеціалістів. Сучасні
комп'ютери здатні вивести інформацію у різному вигляді:
текстовому, графічному, звуковому.


Slide 6

Exit

Повідомлення та сигнали
Спілкування – це процес обміну інформацією. Обмін
інформацією відбувається через повідомлення.
Повідомлення – це процес передачі інформації.
Для виконання повідомлення повинні бути джерело
інформації, споживач інформації та канал зв'язку, що
забезпечує передачу інформації від джерела до споживача.
А як же передається інформація?
Інформація передається у вигляді сигналів.
Сигнали можуть бути акустичними, електромагнітними,
електричними, магнітними, тощо.
Люди, наприклад, найчастіше спілкуються за допомогою
акустичних (чуємо) та електромагнітних (бачимо) сигналів.
Основними сигналами в комп'ютері є електричні та магнітні.


Slide 7

Exit

Види сигналів
Існують прості та складні сигнали.
Якщо, побачивши на відстані приятеля, людина робить
кивок головою, то цей простий сигнал означає привітання.
Коли ж, ви привітаєтеся словом “добридень”, то це вже є
складним сигналом, який складається із групи простих
звукових сигналів.
Якщо ви написали слово “добридень” на аркуші паперу та
показали його на відстані товаришу, то це також складний
сигнал у вигляді тексту. Слово “добридень” формується
групою простих буквених сигналів із 9 букв.
Для формування складних сигналів з метою передавання
інформації існують певні мови.


Slide 8

Exit

Поняття мови
З раннього дитинства людина вчиться сприймати та
передавати інформацію за допомогою сигналів. При цьому
кажуть, що вона вивчає мову.
Що ж таке мова?
Мова є засобом обміну інформацією, тобто засобом
спілкування.
Мова є системою правил формування сигналів, що несуть
певну інформацію у закодованому вигляді.
Для того, щоб споживач зрозумів інформацію, джерело
повинно сформулювати її на зрозумілій споживачі мові.
Тобто і джерело і споживач повинні володіти спільною
мовою.


Slide 9

Exit

Види мов
Існує велика кількість мов: усні мови (українська, російська,
англійська…), відповідні їм письмові мови, мови жестів (до
речі, у різних народів різні), мови креслення, схем,
математики, жаргонні мови (нелітературні мови) тощо.
З появою комп'ютерів виникла необхідність у створенні мов
спілкування з комп'ютером.
Таким чином виникли комп'ютерні мови.


Slide 10

Exit

Комп'ютерна мова
Основною метою створення комп'ютерів було створення
швидкого та точного виконавця алгоритмів.
Для того, щоб комп'ютер став виконавцем, він повинен
отримувати команди “зрозумілою” йому мовою та
виконувати їх.
Виникла потреба у створенні комп'ютерної мови – зрозумілої
як комп'ютеру, так і людині, що з ним спілкується.


Slide 11

Exit

Сигнали комп'ютерної мови
Природа комп'ютера полягає у тому, що він є електронною
машиною і здатен сприймати лише електричні сигнали.
Простий електричний сигнал здатен нести два варіанти
інформації (“є сигнал” та “сигнал відсутній”).
Для формування більшої кількості варіантів інформації
сигнали повинні бути складними. Тобто інформація повинна
кодуватися не в одному електричному сигналі, а в групі
паралельних сигналів.
Кожний простий електричний сигнал розміщується в певній
точці пам'яті, що має назву біт.
Група із восьми сусідніх бітів має назву “байт”.
Один байт дає змогу створити 28=256 варіантів коду.
Так виник спосіб кодування інформації для комп'ютера, на
якому базується мова машинних кодів.


Slide 12

Exit

Дещо про мову машинних
кодів
Як і у звичайних літературних мов, інформаційною одиницею
мови машинних кодів є слово.
Тільки називається воно машинним словом. Машинне слово
складається із двох сусідніх байтів. І дає можливість створити
216=65536 варіантів коду.
За змістом машинне слово може містити команду, значення
або коментар.
Як і літературні мови, мова машинних кодів має власний
алфавіт. Щоправда він містить лише два символи 0 та 1.
0 означає відсутність у біті сигналу, а 1 – наявність його.
Тому запис речення мовою машинних кодів матиме вигляд на
зразок: 00110011 11001010 00011100
Зрозуміло, що це означає? Звісно - ні. Бо, щоб розуміти мову
машинних кодів, її слід спочатку вивчити.


Slide 13

Exit

Споживач інформації
мовою машинних кодів
Ми з'ясували, що комп'ютер “розуміє” виключно мову
машинних кодів. А це означає, що в комп'ютері повинен бути
пристрій, що сприймає інформацію подану цією мовою та
певним чином реагує на неї.
Цей пристрій називається процесором.
Процесор “знає” певний набір елементарних команд та
“вміє” їх виконувати. Саме ці команди і передаються йому
засобами мови машинних кодів.


Slide 14

Exit

Програма та мова
програмування
Програма є алгоритмом для виконавця-комп'ютера.
Вона повинна бути написана мовою “зрозумілою”
комп'ютеру. Інакше комп'ютер відмовиться її виконувати.
А отже – програма створюється за допомогою мови
програмування.


Slide 15

Exit

Недоліки мови машинних
кодів
Створювати програми мовою машинних кодів досить
незручно.
По-перше, вона дуже віддалена від звичних нам мов. А,
якщо взяти до уваги, що людина мислить рідною мово, то
зрозуміло, що мислити мовою машинних кодів важко.
По-друге, набір команд, що в змозі виконати процесор, не
дуже великий. А тому, для створення навіть елементарного
алгоритму знадобиться записати досить велику кількість
команд. Це відбирає у програміста велику кількість часу.
По-третє, досить незручно налагоджувати програму – перш
за все - шукати в ній помилки.


Slide 16

Exit

Мова Асемблер
Саме вказані недоліки мови машинних кодів на початку ери
комп'ютерів створювали умови, коли програмувати мала
можливість тільки обмежена група підготовлених спеціалістів.
Та і їм програмувати було досить незручно. Тому згодом була
створена мова програмування Асемблер, в якій команди
записувалися не числами, а вже словами, запозиченими із
звичайної мови.
Програма (алгоритм) на Асемблері записувалася у текстовому
редакторі, а потім за допомогою транслятора перекладалася на
мову машинних кодів, які розміщалися у певному місці пам'яті.
Асемблер є більш наближеною до звичайної мови ніж мова
машинних кодів (хоча і не набагато). Транслятор Асемблера
дозволяє знайти помилку та вказати на її місце.
Але він, все-таки, використовує тільки обмежену кількість команд
процесора, що робить текст програми досить великим. Це є
основним недоліком Асемблера.


Slide 17

Exit

Алгоритмічні мови високого
рівня програмування
Мову машинних кодів та мову Асемблеру прийнято називати
мовами низького рівня програмування. Ця назва
зумовлена саме тим, що в алгоритмах цих мов
використовуються виключно команди процесора пов'язані
безпосередньо з його механізмом роботи.
Оскільки для широкого кола користувачів програмувати
мовою машинних кодів або мовою Асемблера незручно, то
були створені спеціальні алгоритмічні мови високого рівня
програмування. Їх назвали так, бо правила написання
тексту алгоритмів цими мовами максимально наближені до
правил звичайної мови.
Серед алгоритмічних мов високого рівня програмування на
сьогодні найпоширенішими є BASIC, Pascal, C+ та їх
вдосконалені нащадки VsualBasic, Delphi, С++.


Slide 18

Exit

Переваги та недоліки
алгоритмічних мов високого рівня
програмування
Основною перевагою мови програмування високого рівня є
її наближеність до звичайної літературної мови та мови
математики. (Останнє дуже важливо, так як робота
комп'ютера полягає в виконанні величезної кількості
операцій математичних обчислень. Це пов'язано з тим, що
алгоритм є реалізацією математичної моделі).
Саме ця перевага зумовлює можливість долучення до
програмування широкого кола користувачів.
Недоліком мов високого рівня є недостатня якість їх
трансляторів - програм-перекладачів на мову машинних
кодів. Через що результуючий машинний код містить велику
кількість непотрібних команд та даних, що уповільнюють
роботу самої програми та збільшують її розмір.


Slide 19

Exit

Контрольні запитання
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.

Яку назву мають засоби спілкування?
Що таке спілкування і які види спілкування існують?
Хто або що може бути об'єктами спілкування?
Чи здатен комп'ютер до спілкування? Поясніть.
Що таке повідомлення?
У якому вигляді передається інформація?
Що являє собою поняття “мова”?
Що таке комп'ютерні мови?
Як кодується інформація у мові машинних кодів? Що таке біт,
байт, машинне слово?
Яку роль відіграє процесор у комп'ютері?
Що таке програма і за допомогою чого вона складається?
Мови програмування низького та високого рівнів, їх переваги та
недоліки.