Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Класифікація мов програмування



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

Мова програмування служить двом зв'язаним між собою цілям: вона дає програмісту апарат для завдання дій, які повинні бути виконані, і формує концепції, якими користується програміст, роздумуючи про те, що робити. Першій меті ідеально відповідає мова, яка настільки "близька до машини", що всіма основними машинними аспектами можна легко і просто оперувати достатньо очевидним для програміста чином. Другій меті ідеально відповідає мова, яка настільки "близька до вирішуваної задачі", щоб концепції її рішення можна було виражати прямо і коротко. Тому як і у випадку з природними мовами, є величезна користь бути, принаймні, двомовним. Мова надає програмісту набір концептуальних інструментів, якщо вони не відповідають завданню, то їх просто ігнорують. Наприклад певну задачу можна виконувати як із застосуванням об’єктів, так і без них.

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

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

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

З урахуванням наведених фактів, мови програмування можна поділити на такі типи:

Машинно–орієнтовані мови – це мови, набори операторів і засобів яких істотно залежать від особливостей ЕОМ (внутрішньої мови, структури пам'яті і т.д.). Машинно–орієнтовані мови дозволяють використовувати всі можливості і особливості конкретної моделі ЕОМ. У них такі переваги:

· висока якість створюваних програм (малий об’єм і висока швидкість виконання);

· можливість використання конкретних апаратних ресурсів певної моделі ЕОМ;

· передбаченість об'єктного коду і замовлень пам'яті (це означає, що програма потребує мало ресурсів для виконання);

Але вони також мають ряд недоліків, зокрема:

· для складання ефективних програм необхідно знати систему команд і особливості функціонування даної ЕОМ;

· трудомісткість процесу складання програм, низька швидкість програмування;

· неможливість безпосереднього використання програм, складених на цих мовах, на ЕОМ інших типів.

Машинно-орієнтовані мови ще називають мовами низького рівня. Прикладом машинно-орієнтованої мови є мова Асемблера.

Машинно–незалежні мови – це засіб опису алгоритмів рішення задач та інформації, яка підлягає обробці. Вони зручні у використанні для широкого кола користувачів і не вимагають від них знання особливостей організації функціонування певної моделі ЕОМ.

Подібні мови одержали назву високорівневих мов програмування. Програми, що складаються на таких мовах – це послідовності операторів, структуровані згідно правилам розгляди мови(завдання, сегменти, блоки і т.д.). Після написання такої програми вони підлягає перекладу (трансляції) на машинну мову.

Т.ч., командні послідовності (процедури, підпрограми), часто використовувані в машинних програмах, представлені у високорівневих мовах окремими операторами. Програміст дістав можливість не розписувати в деталях обчислювальний процес на рівні машинних команд, а зосередитися на основних особливостях алгоритму.

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

Проблемних мов дуже багато, наприклад:

Фортран, Алгол – мови, створені для вирішення математичних завдань;

Simula, Сленг - для моделювання;

Лісп, Снобол – для роботи з обліковими структурами.

Perl . Java , PHP - для обробки тексту під час створення веб-сторінок.

Універсальні мови були створені для широкого кола завдань: комерційних, наукових, моделювання і т.д. Перша універсальна мова була розроблена фірмою IBM, що став в послідовності мов Пл/1. Друга по потужності універсальна мова називається Алгол-68. Він дозволяє працювати з символами, розрядами, числами з фіксованою і плаваючою комою. Пл/1 має розвинену систему операторів для управління форматами, для роботи з полями змінної довжини, з даними організованими в складні структури, і для ефективного використання каналів зв'язку. Мова враховує включені в багато машин можливості переривання і має відповідних операторів. Передбачена можливість паралельного виконання ділянок програм.

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

Діалогові мови. Поява нових технічних можливостей поставила завдання перед системними програмістами – створити програмні засоби, що забезпечують оперативну взаємодію людини з ЕОМ їх назвали діалоговими мовами.

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

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

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


Поделиться:



Последнее изменение этой страницы: 2019-04-19; Просмотров: 314; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.016 с.)
Главная | Случайная страница | Обратная связь