Языки программирования высокого уровня для больших ЭВМ
Развитие программирования связано с разработкой в 50-х годах так называемых алгоритмических языков программирования. Их называют языками программирования высокого уровня, а также машинно-независимыми языками. Программа записывается с помощью специальных слов почти так же, как на разговорном языке (в основном — английском). От программиста не требуется детального знания аппаратных особенностей ЭВМ. Сложные формулы имеют вид, практически соответствующий стандартам математики. Поэтому при использовании языков программирования высокого уровня человек больше внимания уделяет сути задачи, алгоритму ее решения, а не деталям реализации на ЭВМ. Программы на машинно-независимых языках сравнительно легко переносятся между компьютерами разных типов.
Естественно, что ЭВМ не «понимает» программу, написанную на алгоритмических языках. Поэтому для каждого языка и для каждого типаЭВМ разрабатывается специальная программа-переводчик, которая транслирует исходный текст в последовательность команд конкретного компьютера. Эти специальные программы называются трансляторами(несколько позже они получили название компиляторов).
Первые алгоритмические языки назывались Algol (сокращение от Algorithmic Language - язык алгоритмов) и Fortran (сокращение от Formula Translation — транслятор формул). Эти языки обладали рядом сходных возможностей. К ним относятся:
- простота записи математических выражений;
- использование ветвления в программе за счет механизма условных выражений и операторов перехода, позволяющих выполнять тот или иной фрагмент программы в зависимости от результатов предыдущих этапов (например, алгоритм определения корней квадратного уравнения зависит от знака дискриминанта), и циклов,позволяющих осуществить многократное повторение некоторого фрагмента программы (например, табуляция значений функции);
- использование массивов,позволяющие программировать операции над матрицами и векторами;
- использование процедур(в Fortran'e—подпрограмм) и функций,позволяющих выделить в отдельный блок некоторый логически законченный алгоритм над абстрактными данными (формальные параметры)и многократно обращаться к ним с указанием конкретных данных (фактические параметры). Так, например, для многократного использования тригонометрических функций следует запрограммировать алгоритм их вычисления от абстрактного аргумента (например, X), а затем многократно их использовать, указывая, что на место абстрактного X подставляются конкретные данные - Y, Z, Fi, 30 и т.д. Или запрограммировать процедуру обращения квадратной матрицы. Алгоритм записывается для некоторой абстрактной матрицы (скажем, А), а затем при их вызове указывается конкретная матрица. Кроме общих моментов, эти языки имели отличия. Мало существенным является отличие в синтаксисе, т.е. в разной форме записи аналогичных инструкций — циклов, условных операторов и т.д. Существенным оказалось наличие двух принципиальных отличий:
- способа управления объемом резервируемой под данные программы памяти;
- особой структурой организации программы на Фортране.
Дата добавления: 2016-07-18; просмотров: 2510;