Сторінка
5
Використання мови асемблера, як правило, обмежується областю системного програмування, тобто програмуванням мікропроцесорів, розробкою операційних систем або їх компонентів, розробкою драйверів - програм обміну інформацією між центральними і периферійними пристроями, програм ув'язки взаємодії окремих компонентів прикладних програм і так далі
Той факт, що мови даного класу зважають на специфіку організації і принципів роботи конкретних ЕОМ і допускають при програмуванні вказівку конкретних режимів роботи фізичних засобів ЕОМ, розподіл пам'яті, явне визначення зовнішніх пристроїв і тому подібне, відносить їх до мов "низького рівня", або мов рівня 1:1 (тобто до мов, для яких одному операторові вхідної мови програмування відповідає один оператор машинної мови).
Машинно-незалежні мови (або мови високого рівня) не вимагають від користувача повного знання специфіки ЕОМ, на якій реалізується програма рішення задачі. Інструментальні засоби цих мов програмування дозволяють записувати програму у вигляді, що допускає її реалізацію на ЕОМ з різними типами машинних операцій, прив'язка до яким це ліком покладається на відповідний транслятор.
Рішення задачі на цих мовах описується в наочному, досить легкий сприйманому вигляді. Для них характерні: можливість написання виразів, символічна ідентифікація змінних, виклик функцій по іменах і тому подібне Завдяки цьому продуктивність програміста при складанні вихідних програм на мовах високого рівня приблизно в 10 -15 раз вище
чим на мові асемблера. Проте отримувані в результаті трансляції машинні програми, як правило, в 2 - 5 разів объемнее в порівнянні з такою ж програмою, але написаною на асемблері, і працюють в 2 - 5 разів повільніше.
Швидке зростання продуктивності ЕОМ, з одного боку, і хронічний брак кадрів програмістів, з іншого боку, послужили причиною бурхливого розвитку і вживання високорівневих мов програмування.
Відособлене, проміжне положення між машинно-незалежними і машинно-залежними мовами займає мову Сі, створення якого з'явилося результатом спроби об'єднання достоїнств, властивих мовам обох класів:
• у плані максимального використання можливостей конкретної обчислювальної архітектури (що властиво мовам низького рівня), завдяки чому програми на мові Сі компактні і працюють ефективно;
• у плані максимального використання потужних виразних можливостей сучасних мов високого рівня.
Результат такого компромісу зумовив досить складний синтаксис мови Сі.
Мова Сі і його модифікації в даний час використовуються головним чином для створення системних і прикладних програмних продуктів, в яких вирішальне значення відводиться чинникам швидкодії і мінімізації об'ємів пам'яті. На мові Сі написано ядро операційної системи Unix, унаслідок чого її легко можна було змінювати і модернізувати (а це спрощує процес її перенесення з однієї обчислювальної системи на іншу, при цьому 95% вихідного програмного тексту операційної системи залишається незміненим).
Машинно-незалежні мови класифікуються на процедурно-орієнтованих і проблемно-орієнтованих.
Процедурно-орієнтовані (універсальні) мови ефективні для опису алгоритмів вирішення широкого класу завдань. З мов цього класу найбільш відомі: Фортран, Кобол, ПЛ/1, Бейсик, Паськаль, Ада.
Проблемно-орієнтовані мови призначені для опису процесів обробки інформації у вужчої, специфічної області. Найбільш відомими мовами цієї групи є: РПГ, Лісп, АПЛ, GPSS.
Останнім часом наголошується бурхливе зростання об'єктно-орієнтованих мов програмування, тобто мов, орієнтованих на розробку програмних застосувань для широкого круга всіляких по сфері додатка завдань, що мають спільність в компонентах, що реалізовуються (наприклад, при взаємодії з базами даних, роботі в умовах функціонування корпоративних мереж організацій або взаємодії з глобальною мережею Інтернет). Об'єктно-орієнтований підхід в програмуванні дозволяє застосовувати одні і ті ж (типові) архітектурні і концептуальні рішення для швидкого створення ефективних програмних застосувань.
Основна гідність алгоритмічних мов високого рівня - можливість опису програм вирішення завдань у формі, максимально зручній для сприйняття людиною. Але оскільки кожне сімейство ЕОМ має свою власну, специфічну внутрішню (машинний) мову і може виконувати лише ті команди, які записані на цій мові, то для перекладу вихідних програм машинною мовою використовуються спеціальні програми-транслятори.
Робота всіх трансляторів будується по одному з двох принципів: інтерпретація або компіляція.
Інтерпретація має на увазі по операторну трансляцію і подальше виконання оператора вихідної програми, що від транслює. У зв'язку з цим можна відзначити два недоліки методу інтерпретації: по-перше, програма, що інтерпретує, повинна знаходитися в пам'яті ЕОМ протягом всього процесу виконання вихідної програми, тобто займати певний об'єм пам'яті; по-друге, процес трансляції одного і того ж оператора повторюється стільки раз, скільки разів повинна виконуватися ця команда в програмі, що різко знижує продуктивність роботи програми.
Інші реферати на тему «Фінанси»:
Проблеми становлення та розвитку грошово-кредитної системи в Україні
Основні теоретичні положення формування місцевих бюджетів та їх практична реалізація в умовах трансформаційної економіки
Доходи (виручка) від реалізації продукції, робіт, послуг
Статистичне спостереження
Фінансування освіти в контексті реалізації інноваційної моделі розвитку економіки України