Мови програмування високого рівня. Інтерпретатори й компілятори.
Мо́ва програмува́ння (англ. Programming language) — це штучна мова, створена для передачі команд машинам, зокрема комп'ютерам. Мови програмування використовуються для створення програм, котрі контролюють поведінку машин, та запису алгоритмів. Більш строге визначення: мова програмування — це система позначень для опису алгоритмів та структур даних[1], певна штучна формальна система, засобами якої можна виражати алгоритми[2]. Мову програмування визначає набір лексичних, синтаксичних ісемантичних правил, що задають зовнішній вигляд програми і дії, які виконує виконавець (комп'ютер) під її управлінням.[ Джерело? ]
Мови програмування високого рівня Можна сказати є зрозумілішими людині, ніж комп'ютеру. Особливості конкретних комп'ютерних архітектур в них не враховуються, тому створені програми легко переносяться з комп'ютера на комп'ютер. Здебільшого достатньо просто перекомпілювати програму під певну комп'ютерну архітектурну та операційну систему. Розробляти програми на таких мовах значно простіше і помилок допускається менше. Значно скорочується час розробки програми, що особливо важливо при роботі над великими програмними проектами. Наразі у середовищі розробників вважається, що мови програмування, які мають прямий доступ до пам’яті та регістрів або мають асемблерні вставки, потрібно вважати мовами програмування з низьким рівнем абстракції. Тому більшість мов, які вважалися мовами високого рівня до 2000-го року зараз вже такими не вважаються. · Адресна мова програмування · Фортран · Кобол · Алгол · Pascal · Java · C · C++ · Objective C · Smalltalk · C# · Delphi Недоліком мов високого рівня є більший розмір програм порівняно з програмами на мові низького рівня. Сам текст програм на мові високого рівня менший, проте, якщо взяти у байтах, то код початково писаний на асемблері буде більш компактніший. Тому в основному мови високого рівня використовуються для розробок програмного забезпечення комп'ютерів, і пристроїв, які мають великий обсяг пам'яті. А різні підвиди асемблеру застосовуються для програмування інших пристроїв, де критичним є розмір програми. Компілятори й інтерпретатори З допомогою мови програмування створюється не готова програма а тільки її текст, що описує раніше розроблений алгоритм. Щоб одержати робочу програму, треба цей текст або автоматично перевести в машинний код (для цього служать програми-компілятори (compiler)) і потім використати окремо від вихідного тексту, або відразу виконувати Інтерпретатор бере черговий оператор мови з тексту програми, аналізує його структуру й потім відразу виконує (звичайно після аналізу оператор транслюється в деяке проміжне подання або навіть машинний код для більш ефективного подальшого виконання). Компілятори повністю обробляють весь текст програми(що інколи називають вихідними текстами). Вони переглядають його в пошуках синтаксичних помилок (іноді кілька разів), виконують певний значеннєвий аналіз і потім автоматично переводять (транслюють) на машинну мову – генерують машинний код. У результаті закінчена програма виходить компактною і ефективною, працює в сотні разів швидше програми, виконуваної за допомогою інтерпретатора, і може бути перенесена на інші комп’ютери із процесором, що підтримує відповідний машинний код. Основний недолік компіляторів – трудомісткість трансляції мов програмування, орієнтованих на обробку даних складної структури, часто заздалегідь невідомої або динамічно змінюваної під час роботи програми. Для класифікації комп’ютерних мереж використовуються різні ознаки, вибір яких полягає в тім, щоб виділити з існуючого різноманіття такі, які дозволили б забезпечити даній класифікаційній схемі такі обов’язкові якості: - можливість класифікації всіх, як існуючих, так і перспективних КМ;
По призначенню КМ розподіляються на: · обчислювальні; · інформаційні; · змішані (інформаційно-обчислювальні). Особливе значення займає класифікація по територіальній ознаці, тобто по величині території, що покриває мережа. І для цього є вагомі причини, тому що відмінності технологій локальних і глобальних мереж дуже значні, незважаючи на їхнє постійне зближення. локальні (Local Area Networks – LAN) мережі; глобальні (Wide Area Networks – WAN) мережі; міські (Metropolitan Area Networks – MAN) мережі. LAN– зосереджені на території не більше 1–2 км; побудовані з використанням дорогих високоякісних ліній зв’язку, які дозволяють, застосовуючи прості методи передачі даних, досягати високих швидкостей.
|