
- •Курсовий проект
- •Завдання на курсовий проект
- •Реферат
- •1.1 Бінарне дерево
- •1.2 Обхід бінарного дерева
- •1.3 Бінарне дерево на базі масиву
- •2.1. Комп’ютерна програма
- •2.2. Життєвий цикл програмного забезпечення
- •2.3. Мови програмування
- •2.4 Системи та середовища програмування
- •3.1 Інструкція по використанню програми
- •Натискаємо «Enter» и отримуємо готове бінарне дерево пошуку мал. 6 мал. 6 висновок
- •Список літератури
- •Додаток
2.3. Мови програмування
Для надання алгоритму вигляду , зрозумілому комп'ютеру , служать мови програмування. Спочатку завжди розробляється алгоритм дій, а потім він записується на одному з таких мов. У підсумку виходить текст програми – повне, закінчене і детальний опис алгоритму мовою програмування. Потім цей текст програми спеціальними службовими програмами, які називаються трансляторами, або переводиться в машинний код (мову), або виконується [7].
Самому написати програму в машинному коді вельми складно, причому ця складність різко зростає із збільшенням розміру програми і трудомісткості рішення потрібного завдання. Тому сьогодні практично всі програми створюються за допомогою мов програмування. Теоретично програму можна написати і засобами звичайної людського мови – це називається програмуванням на метамові (подібний підхід зазвичай використовується на етапі складання алгоритму), але автоматично перевести таку програму в машинний код поки неможливо через високі неоднозначності природної мови.
Мови програмування – штучні мови. Від природних вони відрізняються обмеженим числом слів, значення яких зрозуміло транслятору, і дуже строгими правилами запису команд ( операторів). Сукупність подібних вимог утворює синтаксис мови програмування, а зміст кожної команди і інших конструкцій мови – його семантику [6-7]. Порушення форми запису програми призводить до того, що транслятор не може зрозуміти призначення оператора і видає повідомлення про синтаксичну помилку , призводить до семантичних помилок (логічних або помилок часу виконання ).
За допомогою мови програмування створюється не готова програма , а тільки її текст, що описує раніше розроблений алгоритм. Щоб отримати працюючу програму, потрібно цей текст або автоматично перевести в машинний код (для цього служать програми – компілятори) і потім використовувати окремо від вихідного тексту, або відразу виконувати команди мови, зазначені в тексті програми (цим займаються програми – інтерпретатори).
Різні типи процесорів мають різні набори команд. Якщо мова програмування орієнтована на конкретний тип процесора і враховує його особливості, то він називається мовою програмування низького рівня. Оператори такої мови близькі до машинного коду і орієнтовані на конкретні команди процесора.
Мовою найнижчого рівня є мова асемблера, яка просто представляє кожну команду машинного коду, але не у вигляді чисел, а за допомогою символьних уловних позначень, так звані мнемоніки. Однозначне перетворення однієї машинної інструкції в одну команду асемблера називається трансляцією.
Кожній конкретній комп'ютерній архітектурі відповідає своя мова асемблера, а написана на ньому програма може бути використана тільки в цьому середовищі, тому що набори інструкцій для кожної моделі процесора відрізняються один від одного.
Мови програмування високого рівня значно ближче і зрозуміліше людині, ніж комп'ютеру. Особливості конкретних комп'ютерних архітектур в них не враховуються, тому створювані програми на рівні вихідних текстів легко переносяться на інші платформи, для яких створено транслятор цієї мови. Розробляти програми на мовах високого рівня за допомогою зрозумілих і потужних команд значно простіше, а помилок при створенні програм допускається набагато менше.
Мови високого рівня бувають чотирьох видів [3, 6-7]:
імперативні (процедурні );
функціональні;
логічні;
об'єктно-орієнтовані.
Основними об'єктами в імперативних мовах є змінні, оператори присвоєння, стандартні алгоритмічні конструкції.
У функціональних мовах програмування використовуються функції , значення яких визначаються за заданими параметрами. Традиційні змінні і оператори присвоєння при цьому вже не потрібні або, принаймні, не обов'язкові ( LISP).
У програмах , написаних на логічних мовах , немає виразно, фіксованого порядку виконання правил і кроків алгоритму . Вибір підходящої послідовності покладається на систему ( Prolog ).
Об'єктно-орієнтовані мови спрощують програмування з використанням технології об'єктно-орієнтованого програмування (Java , C ++, С# ).