Популярные языки программирования.

Уровни языка программирования.

Способы трансляции.

 

Компиляторы и интерпретаторы

 

Программа, написанная на каком-либо алгоритмическом языке высокого уровня, не может быть выполнена непосредственно на ЭВМ, поэтому программа, написанная на языке высокого уровня, должна быть переведена (транслирована) на язык команд конкретной ЭВМ.

Существует 2 основных способа трансляции — компиляция и интерпретация.

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

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

 

 

Существуют следующие уровни языков программирования:

1) Машинный;

2) Машинно-ориентированный;

3) Машинно-независимый.

Машинные языки и машинно-ориентированные языки — языки низкого уровня, требующие указания мелких деталей обработки данных.

Языки высокого уровня имитируют естественные языки, используя некоторые слова разговорного языка и общепринятых математических символов.

Машинные коды, ассемблер разрабатываются под определённые типы компьютеров и микропроцессоров. Ассемблер позволяет программисту иметь полный контроль над аппаратным обеспечением компьютера и генерирует очень эффективный исполняемый код. Несмотря на преимущество, программирование на этом языке требует больших затрат времени, он труден для изучения и понимания.

 

 

FORTRAN (FORmula TRANslator) был спроектирован в 1956 году в основном для инженеров, математиков и учёных, которые имеют дело с формулами и проблемами, ориентированными на вычисление. На FORTRANе можно довольно просто описывать сложные вычисления, манипулировать массивами и распечатывать выходные данные множества чисел. FORTRAN сравнительно легко осваивается, но его синтаксис очень требователен к точности ввода операторов, что вызывает частые ошибки и делает отладку программ сложной.

COBOL (Common Business-Oriented Language) – общий язык для приложений, ориентированных на бизнес и коммерцию. Разработан в начале 1960-х гг. для того, чтобы было легче писать программы для бизнеса, которые могли бы использоваться для обработки заказов, ведения бухгалтерии, планирования производства. Данные, которыми оперирует COBOL, это, прежде всего, записи, файлы, таблицы и списки. Программы, написанные на COBOL, относительно понятны даже для неспециалистов.

Basic(Beginners All-purpose Symbolic Instruction Code) был создан в 1964 году для обучения студентов в колледже использованию компьютера. Слабые стороны: выполняет все задачи одинаково без оптимизации кода.

Pascal назван в честь Паскаля, французского математика и философа. Pascal разработан швейцарским профессором Никлаусом Виртом в конце 1960-х гг. Благодаря наличию возможности обработки сложных массивов, данных и наборов простых, но мощных команд, его применяют в основном для обучения будущих профессионалов навыкам программирования.

C и C++ - разработаны в начале 1970-х гг. фирмой AT&T Bell Labs. Эти языки являются фактически единственным выбором для построения операционных систем и сложных приложений. Операционные системы Unix, Linux, Windows большей частью написаны на C. Компилятор C написан на C. Программист, владеющий C, имеет полный контроль над средой разработки.

PL/1 (Programming Language 1) разработан IBM в 1964 году. Мощный и сложный многоцелевой язык программирования. Пригоден для программирования научных и бизнес приглашений и даже операционных систем.

Ada – язык предполагалось использовать для разработки, прежде всего, программного обеспечения систем вооружений. Также, как и PL/1, Ada не смогла стать универсальным языком, т.к. природа языка весьма сложная и решение других проблем, отличных от военных, сильно ограничены.

LISP и Prolog. LISP создан в конце 1950-х гг. математиком Джоном, который ориентировал этот язык на формирование из вводимых символов, которые в свою очередь являлись операторами, переменными и значениями данных и подходил для решения громоздких числовых задач. Prolog отличается в основном тем, что первым можно работать на обычных компьютерах, а второй работает лучше на машинах, специально созданных для LISP.{???}