Эксперт
Сергей
Сергей
Задать вопрос
Мы готовы помочь Вам.

Содержание:

Введение ………………………………………………………………………. 2
1. Историческая справка……………………………………………………… 3
2. Основы Алгол……………………………………………………………… 5
3. Алгол 60……………………………………………………………………. 7
4. Алгол 68…………………………………………………………………… 12
Заключение……………………………………………………………………. 14
Список использованной литературы………………………………………….. 15

Введение

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

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

Алго́л (англ. algol от англ. algorithmic — алгоритмический и англ. language — язык) — название ряда языков программирования, применяемых при составлении программ для решения научно-технических задач на ЭВМ. Разработан в 1958—1960 гг. (Алгол-58, Алгол-60); усовершенствован в 1964—1968 гг. (Алгол 68). Алгол относится к языкам высокого уровня и позволяет легко переводить алгебраические формулы в программные команды. Алгол был популярен в Европе, в том числе в СССР, однако он оказал заметное влияние на все разработанные позднее языки программирования — в частности, на язык Pascal.

Обычно под понятием Алгол подразумевается Алгол-60, в то время как Алгол 68 рассматривается как самостоятельный язык. Даже когда язык Алгол почти перестал использоваться для программирования, он ещё оставался официальным языком для публикации алгоритмов.

1. Историческая справка

Алгол был разработан комитетом, в который входили европейские и американские учёные.

Первая версия этого языка, Алгол-58, была разработана в ходе напряженного восьмидневного совещания в конце весны 1958 года, преимущественно для решения численных задач. Программисты неоднозначно приняли новый язык, и широкого одобрения он так и не получил.

Джон Бэкус разработал нормальную форму Бэкуса как формальный способ описания алгоритмических языков, с помощью которой была составлена спецификация для языка Алгол-58. После усовершенствований, которые предложил Питер Наур, возникла форма Бэкуса-Наура, которая использовалась для спецификации языка Алгол-60. Кроме Бэкуса и Наура в комитет по языку Алгол вошёл также Уолли Фойрцойг, который позже создал язык Лого. ALGOL – 60 (1960) был прост и широко использовался в Европе.

Язык Алгол был принят фирмой Burroughs Corporation в их моделях, начиная с B5000 — этот язык получил название Elliott ALGOL. На компьютерах LGP-30 использовался язык Dartmouth ALGOL 30.

В 1965 году К. Хоар и Никлаус Вирт модифицировали Алгол-60. Эта версия, получившая название Алгол-W в честь Вирта (Wirth), была опубликована и приобрела большую популярность в университетских городках. Но комитет по Алголу ее отверг и сам занялся модификацией языка. В декабре 1968 года Международным комитетом специалистов по информатике был создан Алгол-68, работая с которым, программисты могли писать ключевые слова на родном языке. Ключевые слова содержатся в таблице трансляции, хранящейся в памяти компьютера и используемой компилятором Алгола-68 для преобразования программ в машинный код.

Сохраняя стилистическую связь со своим предшественником, Алгол-68 отличается более широкими возможностями и общностью конструкций. Его особенностями являются развитая система типов, автоматическое приведение типов, средства описания параллельных процессов и синхронизации, формальное описание языка на основе двухуровневых грамматик. Стремление к формальной строгости и последовательности сделало Алгол-68 слишком громоздким и сложным. Он использовался в ограниченных масштабах только американскими программистами.

2. Основы Алгол

Algol — язык программирования высокого уровня. Существуют три последовательно сменявших друг друга версии языка: Алгол-58, Алгол-60, Алгол-68. Язык предназначен для записи алгоритмов, которые строятся в виде последовательности процедур, применяемых для решения поставленной задачи.

Алгол подразделяется на три уровня:

  • язык описаний, определяющий основные понятия;
  • язык публикаций, позволяющий писать и обсуждать программы;
  • язык аппаратного уровня, реализуемый на компьютере.

Одним из недостатков языка было отсутствие процедур ввода и вывода данных, поэтому каждая реализация решала ввод-вывод совершенно по-разному. Широкого признания ни Алгол-58, ни его преемник Алгол-60 не получили, но в них были реализованы множество идей, получивших применение и развитие в других языках. Это — блочная структура, позволяющая делить программы на замкнутые, независимые единицы; рекурсия — способность программ повторно обращаться к себе; формализованное определение синтаксиса — способа размещения слов в языке; вложенные контексты; описания переменных; определения способа передачи параметров. В Алголе было предложено два способа передачи параметров в подпрограмму — по имени и по значению.

Для Алгола было разработано три разных синтаксиса:

  • для ссылок;
  • публикаций;
  • приложений.

Разница в синтаксисах состояла в разрешении использовать национальные ключевые слова и символ десятичной точки (точка или запятая, в зависимости от национальных стандартов).

Пример 1 (программы Hello, Word! для реализации Dartmouth ALGOL 30):

BEGIN

FILE F (KIND=REMOTE);

EBCDIC ARRAY E [0:11];

REPLACE E BY “HELLO WORLD!”;

WHILE TRUE DO

BEGIN

WRITE (F, *, E);

END;

END.

Пример 2 (Альтернативная реализация для Elliott Algol):

program HiFolks;

begin

print “Hello world”;

end;

Была ли полезна данная статья?
Да
52.17%
Нет
47.83%
Проголосовало: 23

или напишите нам прямо сейчас:

Написать в WhatsApp Написать в Telegram