У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


підключення бібліотек підпрограм;&низька залежність від типу ЕОМ. З ускладненням МП модернізуються й транслятори для них. Тепер у набір інструментів програміста, окрім транслятора, входить текстовий редактор для введення тексту програм, налагоджувач для усунення помилок, бібліотекар для створення бібліотек програмних модулів і багато інших службових програм. Усе це разом називається системою програмування. Найбільш яскравими представниками МВР є FORTRAN, PL/1, Pascal, C, Basic, Ada. Може виникнути питання: чому створено стільки різноманітних мов одного класу? Чому не можна створити одну мову, яка відповідала б усім вимогам? Відповідь може бути такою, як і на питання про різноманітні мови народів світу: так вийшло. Кожен з розробників МВР прагнув створити найкращу і найуніверсальнішу мову, що давала б змогу швидко одержувати найефективніші, надійні і безпомилкові програми. Однак в процесі цього пошуку з’ясувалося, що результат залежить не від самої мови, а від технології її використання. Тому подальший розвиток мов став визначатися новими технологіями програмування. Водночас з розвитком універсальних МВР стали розвиватися проблемно-орієнтовні МП, що вирішували економічні задачі (COBOL), задачі реального часу (Modula-2, Ada), символьної обробки (Snobol), моделювання (GPSS, Simula, SmallTalk), чисельно-аналітичні задачі (Аналітик) та ін. Ці спеціалізовані мови давали змогу адекватніше описувати об’єкти і явища реального світу, наближаючи мови програмування до мови фахівця в проблемній галузі. Особливо слід відзначити мову Аналітик, яка була розроблена Київським інститутом кібернетики для вітчизняної ЕОМ “Мир-2”. Крім звичайних засобів МВР, ця мова використовувала загальну математичну символіку, виконувала диференціювання, інтегрування та спрощення виразів. Іншим напрямом розвитку МП є створення мов надвисокого рівня (МНВР). Мовою високого рівня програміст задає процедуру (алгоритм) одержання результату на основі відомих вихідних даних, тому вони називаються процедурними МП. На МНВР програміст задає відношення між об’єктами в програмі, наприклад, систему лінійних рівнянь, і визначає, що потрібно знайти, але не вказує як отримати результат. Такі мови називають також непроцедурними, оскільки сама процедура пошуку розв’язку вбудована в мову (в її інтерпретатор). Вони використовуються, наприклад, для розв’язування задач штучного інтелекту (Lisp, Prolog) і дають змогу моделювати розумову діяльність людини в процесі пошуку розв’язків. До непроцедурних мов можна віднести і мови запитів систем управління базами даних (QBE, SQL). Класифікація МПВиходячи з вищезазначеного, МП можна класифікувати за такими ознаками:1. За ступенем орієнтації на специфічні можливості ЕОМ МП поділяються на:&машинно-залежні;&машинно-незалежні. До машинно-залежних МП відносяться машинні мови, асемблери і автокоди, що використовуються в системному програмуванні. Програма на машинно-залежній МП може виконуватися лише на ЕОМ даного типу. Програма на машинно-незалежній МП після трансляції на машинну мову стає машинно-залежною. Ця ознака МП визначає мобільність одержуваних програм (можливість перенесення на ЕОМ іншого типу). 2. За ступенем деталізації алгоритму одержання результату МП поділяються на:&мови низького рівня;&мови високого рівня;&мови надвисокого рівня. Рівень МП визначається на основі складності елементів мови, з яких будується програма. Найнижчим рівнем є машинна мова, а найвищим, мабуть, рівень природної мови людини, якою формулюється задача типу “Дано:. . . Треба:. . . ”. До мов низького рівня належать машинні мови, асемблери та автокоди. До мов високого рівня належать мови, які мають типи даних (наприклад, масиви) та програмні конструкції (наприклад, цикли), що безпосередньо не реалізуються машинною мовою. Взагалі, одному оператору мови високого рівня відповідає певна програма машинною мовою. Традиційно до мов високого рівня відносять мови класу FORTRAN, PL/1, Pascal, C, Basic, Ada. До мов надвисокого рівня відносять мови, які мають найбільш абстрактні механізми опису задачі та вбудовані засоби її розв’язування. Ці мови дають змогу зосередитися на самій задачі, а не на деталях її розв’язування. До таких мов належать мови класу Lisp, Prolog. 3. За ступенем орієнтації на розв’язування задач певного класу МП поділяються на:&проблемно-орієнтовані;&універсальні. Проблемно-орієнтовані МП містять спеціалізовані засоби опису та розв’язування задач певного класу. Універсальні ж МП не містять таких засобів, дозволяють розв’язувати будь-які задачі, але більшими зусилями. 4. За можливістю доповнення новими типами даних і операціями МП поділяються на такі:&що розширюються;&що не розширюються. МП, що дозволяють розширювати склад типів даних і операцій, фактично містять механізм адаптації мови для розв’язування певних задач. Вони є замкнутими МП. 5. За можливістю управління реальними об’єктами і процесами МП поділяються на:&мови систем реального часу;&мови систем умовного часу. Мови систем реального часу забезпечують створення систем управління реальними об’єктами, в яких час є важливим чинником. Однією з таких мов є мова Ada, що використовується в системах військового призначення США. 6. За засобом одержання результату МП поділяються на:&процедурні;&непроцедурні. Процедурні МП потребують задання певного алгоритму одержання результату, а непроцедурні мають вбудований механізм пошуку розв’язку. 7. За типом задач, що розв’язуються, МП поділяються на:&мови системного програмування;&мови прикладного програмування. Як правило, мови системного програмування є мовами низького рівня і забезпечують найповніше використання апаратних можливостей ЕОМ. Для розв’язування прикладних задач використовуються мови вищих рівнів. 8. Непроцедурні мови за типом вбудованої процедури пошуку розв’язків поділяються на:&реляційні;&функціональні;&логічні. Тип вбудованої процедури пошуку розв’язків визначає парадигму обчислень і структуру програми. Тенденції розвитку МПМови системного програмування, на яких створюються операційні системи, транслятори й інші системні програми, розвиваються в напрямку підвищення їхнього рівня та незалежності від ЕОМ. У наш час майже 90% системного програмного забезпечення створюється не мовою асемблера, а мовою C. Наприклад, операційна система Unix практично повністю написана мовою C. Ця мова дає змогу одержувати програми, які
Сторінки: 1 2 3