Скачиваний:
406
Добавлен:
22.01.2014
Размер:
3.77 Mб
Скачать

33.3. Инструментальное программное обеспечение (ипо) эвм.

Согласно вышесказанному (рис. 25) ядро ИПО составляют ЯВУ, позволяющие с той или иной степенью эффективности описывать алгоритмы решаемых пользователем задач. Поэтому исторические аспекты, вопросы организации данного класса ПС, их современное состояние и перспективы развития представляют несомненный интерес. Подобно аппаратной части ЭВМ развитие ИПО на сегодня характеризуетсяпятью поколениямиязыков программирования (ЯП), которые от поколения к поколению постоянно улучшали свои характеристики, становясь, все более доступными в освоении непрофессиональным пользователем. Однако и до сих пор языкипервых поколений (исключая сугубомашинные) используютсясистемными программистами для разработки СПО, непосредственно управляющего аппаратными ресурсами ЭВМ; делается это в целяхповышения эффективности его функционирования.Первые три поколения ЯП характеризовались более сложнымисловарем и синтаксисом, где подсловарем понимается наборзарезервированных слов языка, а подсинтаксисом точныеправила иконструкции, необходимые для построения правильных предложений языка, определяющих для ЭВМ, что и как сделать, т.е. описать алгоритм решаемой задачи. С появлением развитых ЯВУ в разработке ПС практически не используется машинный язык, исключая специальные случаи, как, например, ПО для новых ВУ. Языки 4-го поколения все еще требуют соблюдения определенного синтаксиса при написании программ, но он значительно легче для освоения непрофессиональным пользователем. Естественные ЯП, разрабатываемые в настоящее время, составят 5-е поколение и позволят непрофессиональному пользователю определять необходимые процедуры обработки информации, используя предложения языка, весьма близкого к естественному и не требующего соблюдения особого синтаксиса. Остановимся несколько подробнее на инструментальных средствах, определяющих упомянутые пять поколений (табл. 33.1).

ЯП первого поколения были строго машинно-зависимыми, представляя собой, по сути дела, набормашинных команд вбинарном или восьмеричном формате, который определялся архитектурой конкретной ЭВМ. Поэтому каждый тип ЭВМ имел свой ЯП, программы на котором были пригодны только для данного типа ЭВМ и понятны искушенному программисту. От пользователя ЭВМ требовалось не только хорошее знание машинного языка, но и архитектуры и принципов функционирования ЭВМ. Круг таких пользователей был весьма узок и составлял своеобразную касту жрецов ЭВМ.Второе поколение характеризуется созданием ЯПассемблерного типа(ассемблеров, макроассемблеров), позволяющих вместо бинарных и иных форматовмашинных команд использовать ихмнемонические символьные обозначения(имена). Являясь существенным шагом вперед,ассемблерные языки все еще оставались машинно-зависимыми, а пользователь все также должен был быть хорошо знаком с организацией и функционированиемаппаратной среды конкретного типа ЭВМ.

Таблица 33.1.

При этом ассемблерные программы затруднительны для чтения, более трудоемки при отладке и требуютбольших усилий для переноса на другие типы ЭВМ. Но и сейчасассемблерные языки используются при необходимости разработки высокоэффективного ПО(минимального по объему имаксимальной производительности), хотя и весьма ограниченно, ибо ИПО располагает весьма эффективными ЯВУ, да и требования к оптимизацииосновных ресурсов ЭВМ становятся не столь жесткими. Вместе с темассемблерные ЯП — все еще важные инструментальные средства для микро-ЭВМспециального типа, а также при разработках ПС для новых типов ВУ, хотя и здесь уже появился целый ряд развитых САПРов с пользовательским интерфейсом высокого логического уровня.

Третье поколение начинается с появления в 1956 г. первого ЯВУFortran, разработанного под руководством Дж. Бэкуса в фирме IBM. За короткое времяFortran становится основным ЯВУ для мини- и общего назначения ЭВМ при решении инженерно-технических и научных задач. Являясь великолепно приспособленным для решения указанного класса задач, первоначальноFortran обладал весьма ограниченными средствами обеспечения работы с символьной информацией и системой ввода/вывода. Однако постоянное развитие языка:Fortran — Fortran IV — Fortran-77 —Fortran-88 — Fortran-95 сделало его одним из самых распространенных ЯВУ на ЭВМ всех классов — от микро- до супер-ЭВМ, а его версии используются и для ВСнетрадиционной параллельной архитектуры. Вскоре после языкаFortran появились такие ныне широко известные ЯВУ, какAlgol, Cobol, Basic, PL/I, Pascal, APL, ADA, C, Forth (версияMMS Forth дляIBM-совместимых ПК),Lisp, Modulo, Prolog и др. По оценкам специалистов в настоящее время насчитывается свыше 2000 различных ЯВУ;многие из них Применяются весьма ограничено либо вовсе вышли из употребления(Algol, RPG), другие не утратили своих позиций с момента своего создания(Fortran, Forth, ADA, Lisp и др.),третьи в силу ряда причин переживают вторую молодость(Basic, Pascal, С, Prolog).

В настоящее время ЯВУ 3-го поколения составляют основу ИПО для всех классов ЭВМ, исключая, в определенной мере, ВС нетрадиционной параллельной архитектуры, использующихпараллельные ЯВУ, относящиеся к 4-му поколению ИПО. Учитывая роль ЯВУ не только в качествелогического интерфейса между пользователем и ЭВМ, но вомногих случаях и в качествесистемы понятий, на основе которых пользователь может обдумывать свои задачи, инотаций, посредством которых он может выражать свои подходы к их решению, остановимся на них несколько детальнее.