Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Algoritmy.doc
Скачиваний:
3
Добавлен:
27.04.2019
Размер:
550.91 Кб
Скачать

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

Компилятор - программа, преобразующая текст программы на языке программирования в машинные коды (в более общем смысле компилятор - это программа, преобразующая текст программы из одного представления в другое, например, в байт-код, в текст программы на ассемблере и т.п.)

Интерпретатор - программа или устройство, выполняющее программу непосредственно на языке программирования, в промежуточном представлении или в машинных кодах.

Устройством, выполняющим машинные коды, является процессор компьютера.

Для большинства языков программирования существуют компиляторы, переводящие программу на ЯП в машинные коды (Pascal, С++).

Для таких языков как Basic, JavaScript имеются интерпретаторы, выполняющие текст программы команда за командой. Скорость такой интерпретации - низкая (приблизительно в 100-1000 раз медленнее машинных кодов).

Для С# и Java интерпретатор выполняет байт-код, предварительно полученный с помощью компилятора. Скорость интерпретации высокая (приближается к скорости выполнения программы в машинных кодах).

Обзор языков программирования высокого уровня (таблица)

Универсальные языки

Функциональные и логические языки

Чистые объектно-ориентированные языки

Параллельные языки

Языки сценариев

Fortran (1954)

LISP (1958) функциональный

Simula (1967)

Occam (1982)

JavaScript (1996)

Cobol (1960)

Prolog (1971) логический

SmallTalk (1972)

Ada95 (1995)

Perl (1996)

Algol (1960)

 

Eiffel (1986)

 

Python (1996)

Basic (1963)

PL/1 (1964)

Pascal (1970)

C (1972)

Modula-2 (1978)

Ada (1983)

C++ (1988)

Java (1995)

C# (2000)

Oberon (1988)

Zonnon (2002)

Язык программирования Паскаль Первая программа на языке программирования Паскаль

program first; // Программа вычисления длины окружности и площади круга // Автор: Михалкович С.С. // Дата написания: 14.09.05 const Pi=3.14; var   r: real;   // входные данные - радиус круга   S,C: real; // выходные данные - площадь круга и длина окружности begin   write('Введите радиус окружности');   readln(r);   S:=Pi*r*r;   C:=2*Pi*r;   writeln('Длина окружности равна ',С);   writeln('Площадь круга равна ',S); end.

Комментарии в программе

{ } и (* *) – могут быть вложенными

// – до конца строки.

Комментарии игнорируются компилятором и предназначены для пояснения текста программы.

Общая структура программы

program имя; // заголовок программы (не обязателен)   раздел подключения внешних модулей // uses ...   раздел описаний begin   операторы end.

Выделенные слова называются зарезервированными. Они используются для описания конструкций языка и не могут использоваться в качестве имен. То есть нельзя описать, скажем, переменную с именем begin, но можно - с именем integer.

Правила записи программ

  1. Большие и маленькие буквы не различаются.

  2. Операторы разделяются символом ";" (точка с запятой). После последнего оператора тоже может ставиться точка с запятой; в этом случае считается, что за этим оператором стоит пустой оператор.

  3. Между лексемами может содержаться произвольное количество пробелов, символов перехода на новую строку, знаков TAB.

Лексемы языка Pascal

1) Специальные символы

знаки операций:  :=   >=   = ограничители:   ;   ,   ( зарезервированные слова:    begin  end  var

2) Идентификаторы (используются в качестве имен объектов программы).

Определение. Идентификатор - последовательность латинских букв или цифр, начинающаяся с буквы. К буквам также относят символ _ (подчеркивания).

    _a1 - идентификатор     3dnews - не идентификатор

3) Константные значения

3.14  1E-12   'Hello'

4) Комментарии.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]