Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСНОВИ АЛГОРИТМІЗАЦІЇ.doc
Скачиваний:
9
Добавлен:
09.11.2019
Размер:
511.49 Кб
Скачать

Завдання для самостійної роботи

1. Перевести в шіснадцяткову та двійкову системи десяткове число, яке дорівнює сумі Вашого дня, місяця та року народження.

Розділ 2. Історія розвитку мов|язиків| програмування високого рівня

Мови програмування високого рівня (МВР) з'явилися вже на перших етапах становлення обчислювальної техніки. Першою такою поширеною МВР, була розроблена американськими фахівцями в середині 50-х мова ФОРТРАН (FORTRAN- formula translator, англ.). Як випливає з назви, ця мова орієнтована на проведення математичних розрахунків, що було важливе в епоху бурхливого розвитку ядерної фізики і авіаційно-космічній техніки. Його відрізняють простота і синтаксична строгість.

На цій мові розроблені бібліотеки програм науково-технічних розрахунків, які не втратили актуальності і в даний час. Досить відзначити, що до складу інструментальних засобів сучасних ПК входить програмна середа ФОРТРАН. Мова жива впродовж 60-ти років! Основні конструкції цієї мови увійшли до сучасних МВР без істотних змін.

Конкуренцію Фортрану повинна була скласти мова|язик| АЛГОЛ (ALGOL| – algorithmic| language|) розробки європейських, у тому числі радянських фахівців|спеціалістів|, що з'явилася|появлявся| в 1960 році. Алгоритмічно і синтаксично ці дві мови|язики| дуже близькі і в перші роки розвивалися паралельно - на американських ЕОМ – ФОРТРАН, на французьких, німецьких і радянських ЕОМ – АЛГОЛ-60.

Ситуація змінилася, і не на користь Алголу, в середині 60-х, коли почалася|починала| експансія американської обчислювальної техніки. В цей час СРСР і країни СЕВ прийняли ідеологію американських великих ЕОМ з|із| архітектурою IBM-360| і малих ЕОМ з|із| архітектурою PDP-7|, на яких використовувалися транслятори з Фортрану і мови|язика| інженерних розрахунків БЕЙСІК.

Оскільки великі ЕОМ були орієнтовані на нескладні, але|та| інформаційно ємкі|ємні| комерційні розрахунки, з'явилася|появлявся| спеціалізована МВР КОБОЛ - (COBOL-| common| business| oriented| language, англ.|). У цій мові|язиці| вперше|уперше| особлива увага приділена обробці символьної інформації (обробка структурованих даних, копіювання, порівняння символьних рядків, робота з|із| текстовими дисплеями, зовнішніми накопичувачами великого об'єму|обсягу| і так далі). Логічним продовженням цього напряму|направлення| на сучасному рівні є мова|язик| FOXPRO|, а також бібліотечні функції обробки символьної інформації в сучасних мовах.

Наступний|такий| крок розвитку мов|язиків| високого рівня – це поява МВР – Паскаля і Сі (PASCAL, C,C++), які покликані задовольнити вимоги сучасних інформаційних технологій.

Мова|язик| програмування високого рівня ПАСКАЛЬ (Pascal| – на честь швейцарського фізика Блеза Паскаля, 1623-1662 рр.) була запропонована|вигадувати| швейцарським програмістом Никлаусом Віртом в 60-х роках як засіб навчання|вчення| початкуючих програмістів. Строгість|суворість| і синтаксична прозорість мови|язика| відразу завоювала симпатії розробників трансляторів, що сприяло повсюдному поширенню|розповсюдженню| мови|язика| як інструментального засобу для великих і малих ЕОМ.

З|із| появою в 80-х роках персональних комп'ютерів і середовища|середовища| програмування Turbo| Pascal| фірми|фірма-виготовлювача| Borland|, автор – Андерс Хейлсберг (Anders| Heilsberg|), ПАСКАЛЬ став домінуючим інструментальним засобом для розробки прикладного програмного|програмового| забезпечення, яким залишається і до цього дня.

Паралельно із|із| становленням МВР ПАСКАЛЬ в 70-х роках з'явилася|появлявся| мова|язик| С (читається –“сі”). Її створив програміст фірми|фірма-виготовлювача| Bell| Laboratories| Денніс Рітчи (Dennis| Ritchie|), як інструментальний засіб розробки програмного|програмового| забезпечення операційної системи UNIX| для мінімашини PDP-7|. На відміну від строго|суворий| регламентованого Паскаля первинний варіант мови|язика| С (1978р|.) допускав досить|достатньо| вільне|вільне| поводження з різними типами даних, що при обчисленні|підрахунку| виразів і зверненні до підпрограм часто приводило|наводило| до так званих ‘побічних ефектів’ -| неконтрольованим змінам значень змінних.

Стандарт мови|язика| С (ANSI| C) був введений|запроваджувати| тільки|лише| в 1983 р. Він частково нівелював ці недоліки|нестачі|. На роботу комісії із стандарту ANSI| C значно вплинули ідеї, закладені в Турбо Паскалі фірми|фірма-виготовлювача| Borland|. З того часу між цими двома МВР йде негласне змагання і взаємовплив – нові ідеї однієї мови|язика| тут же з'являються|появляються| в іншій. Так під впливом Паскаля в Сі з'явилася|появлялася| чіткіша регламентація типів даних, а під впливом Сі в Паскалі з'явилися|появлялися| оператори дострокового переривання циклу BREAK| і CONTINUE|.

У 1983 р. співробітник Bell| Laboratories| Бьярн Страуструп (Bjarn| Straustrup|) розробив C++| - вдосконалений, об'єктно-орієнтований варіант мови|язика| Сі. У новому варіанті мови|язика| посилений контроль над типами даних, що дозволило усунути головний|чільний| недолік|нестачу| ранніх варіантів Сі - побічні ефекти.

Разом з Turbo Pascal 7.0 мова C++ підтримує як традиційну технологію програмування, засновану на використанні підпрограм, так і нову технологію об'єктно-орієнтованого програмування (ООП), що використовує апарат спадкоємства властивостей і інкапсуляції, – локалізації зони дії змінної, що значно підвищує надійність програмного продукту.

Заглядаючи в не настільки|так| вже віддалене майбутнє інформаційних технологій, що бурхливо розвиваються, можна сформулювати основні вимоги до перспективної мови|язика| програмування високого рівня:

  • Незалежність мови|язика| від апаратних засобів і архітектури комп'ютерної системи,

  • Підтримка технології об'єктно-орієнтованого програмування,

  • Наявність засобів візуального програмування, що в значній мірі|значною мірою| автоматизують процес програмування людино-машинного інтерфейсу – так званого MMI| (man-machine| interface, англ.|),

  • Робота з|із| сучасними системами управління базами даних (СУБД),

  • Робота з|із| системами телекомунікації,

  • Підтримка 2D-| і 3D-| комп'ютерної графіки.

Цим вимогам в більшій або меншій мірі відповідають сучасні версії мов|язиків| PASCAL і С(С++).

Контрольні питання:

  1. Історія виникнення сучасних МВР.

  2. Вимоги для сучасних МВР.