Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



МОВИ ПРОГРАМУВАННЯ (BRINWARE)

Програмування ЕОМ (електронно-обчислювальних машин) - це процес складання програм розв'язування різноманітних задач на ЕОМ. Суть процесу програмування ЕОМ зводиться до подання алгоритму розв'язування задачі у виді скінченого набору інструкцій для обчислювальної машини. Для запису цих інструкцій розроблено спеціальні мови - мови програмування.

Мови програмування — штучно створені мови для опису алгоритмів рішення задач за допомогою ЕОМ.

Мова програмування— це сукупність набору символів (алфавіту) системи, правил утворення (синтаксис) і тлумачення конструкцій з символів (семантика) для завдання алгоритмів з використанням символів природної мови.

Розрізняють мови низького і високого рівня.

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

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

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

У відповідності з 5 поколіннями ЕОМ розглядається п’ять поколінь мов програмування:

1 покоління: початок 50-х років – мови перших комп’ютерів. Перша мова асемблера, створена за принципом “одна інструкція – одна стрічка”.

2 покоління: кінець 50-х – початок 60-х р.р. Розроблено символьний асемблер, в якому з’явилося поняття змінної. Це перша повноцінна мова програмування.

3 покоління: 60-ті р.р. – мови програмування високого рівня. Їх характеристики:

- відносна простота;

- незалежність від конкретного комп’ютера;

- можливість використання потужних синтаксичних конструкцій.

Простота мов дає змогу писати невеликі програми і людям, які не є професійними програмісти.

4 покоління: початок 70-х р.р. до сьогоднішнього часу. Створюються мови, призначені для реалізації крупних проектів. Проблемно-орієнтовані мови, що оперують конкретними поняттями вузької галузі. Як правило, в такі мови вбудовують потужні оператори, що дозволяють однією стрічкою описувати функції, для опису яких мовами молодших поколінь потрібно було б сотні-тисячі стрічок початкового коду.

5 покоління: з середини 90-х р.р. – до теперішнього часу. Це системи автоматизованого проектування програмного забезпечення (САПР ПЗ). Створення прикладних програм, редакторів, САПРів для людей, які не знайомі з програмуванням: Word, Excell, PcAD, OrCAD, PSPICE, MathCad, ACAD і т. д.

Алгоритмічна мова – 1. це сукупність набору символів (алфавіту) системи, правил утворення (синтаксис) і тлумачення конструкцій з символів (семантика) для задання та запису алгоритмів; 2. формалізована мова для точного опису обчислювальних процесів та алгоритмів.

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

Ми розглянемо мови високого рівня.

Першою алгоритмічною мовою став Fortran, створений в 1957г. фахівцями фірми IBM під керівництвом Джона Бекуса.

Мова Роки створення Застосування Переваги Недоліки
Фортран 50-ті роки, створив Джим Бекус Використовується в статичних комплексах, в пакетах керування супутниками. В деяких організаціях використовується і сьогодні. Є версія HPF (High Perfomanse Fortran) для паралельних супер комп’ютерів з багатьма процесорами Забезпечена можливість отримання ефективного машинного коду. Дещо важкий у вивченні і мало зручний у створенні програм.
Кобол Початок 60-х років Компілюємо мова для використання в економічній галузі і розв’язання бізнес-задач. Саму велику зарплатню в США отримують саме програмісти на Коболі. На Коболі реалізовані потужні засоби роботи з великими об’ємами даних, що зберігаються на різних зовнішніх носіях Відрізняються багатослівністю: оператори часто виглядають як звичайні англійські фрази; важкий у вивченні.
Алгол В 1960 р. призвана для заміни Фортрану. В 1968 р. Створена потужна версія Алгол 68, але через відсутність потужних комп’ютерів для неї не вдалося своєчасно зробити хороші компілятори. Великі можливості мови. Складна структура мови.
Паскаль Кінець 70-х років Створив Миклаус Вирт. Розвилася мова у сучасну популярну мову програмування. Порівняно з Алголом тут жорсткі вимоги до структури програми. Дещо складніший у вивченні.
BASIC В 60-ті роки Мови на яку були орієнтовані не складні комп’ютери. Операційна система та мова складали одне ціле. Створювався як мова для розваг та функцій операційної системи. Простий у вивченні.  
Сі В 60-ті роки Створений в лабораторії Bell для заміни асемблера при написанні ефективних і компактних програм і при цьому не залежить від конкретного типу процесора. Схожий на Паскаль, має додаткові засоби для прямої роботи з пам’яттю. Складніший у вивченні.
Сі ++ В 1980 р. Об’єктно-орієнтована мова, створена Бьярном траус трупом. Дозволяє підвищити продуктивність програмістів. Вимагає від розробника високої професійної підготовки.
Java Початок 90-х років. Створено компанією Sun на основі Сі ++. По популярності займає 2-ге місце у світі після Бейсика. Програми на Ява можна переносити як на рівні вхідних текстів, так і на рівні байт-коду. Компілюється в платформо-незалежний байт-код, що виконується з допомогою інтерпретатора-віртуальної Ява-машини JVM(Java Virtual Machine), версії якої створені для будь-яких платформ. Невисока швидкодія, оскільки має інтерпретатори

Існують мережеві мови програмування для створення WEB-сторінок

Алгоритмічні мови і асемблери відносяться до мов символьного кодування, тобто до мов, які оперують не машинними кодами, а умовними символьними позначеннями, тому програми, складені на цих мовах, не можуть бути безпосередньо виконані на комп'ютері. Щоб така програма запрацювала, її текст потрібно перетворити в машинні коди. Для цього існують спеціальні програми-перекладачі (транслятори). Розрізняють 2 види трансляторів: компілятор і інтерпретатор. Компілятор транслює програму відразу цілком, і лише після цього можливо її виконання. Інтерпретатор - це більш простий транслятор, він послідовно транслює оператори програми і так само по частинах її виконує.

Сучасні технології програмування базуються на принципах об’єктно-орієнтованого програмування, завдяки якому складні програмні проекти реалізуються у вигляді сукупності об’єктів певної ієрархії. Їх взаємодія встановлюється шляхом передачі повідомлень між об’єктами. На підтримку нової технології програмування були створені нові мови, наприклад C++, Java, Modula. Організація програм на засадах інкапсуляції, успадкування, поліморфізму дозволила значно підвищити рівень програмних проектів.

 


Читайте також:

  1. Безпосереднє програмування відеопам'яті
  2. Виконання програми - реалізація мови програмування
  3. Геометрична інтерпретація задачі лінійного програмування
  4. Геометрична інтерпретація задачі нелінійного програмування
  5. Геометрична інтерпретація розв’язків цілочислових задач лінійного програмування на площині
  6. Графічний метод розв’язування задач лінійного програмування
  7. Державне регулювання суспільного відтворення та його форми. Планування та програмування
  8. Динамічне програмування.
  9. Динамічного програмування
  10. Економічна і математична постановка задачі нелінійного програмування
  11. Економічна і математична постановка задачі нелінійного програмування
  12. Економічна і математична постановка цілочислової задачі лінійного програмування




Переглядів: 2608

<== попередня сторінка | наступна сторінка ==>
Windows | Cтруктура апаратних засобів ІВС

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.02 сек.