Предисловие дорогие друзья !

Вид материалаДокументы

Содержание


Глава 2 основы языка программирования
Ж..-Ж.. Руссо)
Подобный материал:
1   2   3   4   5   6   7   8   9   ...   29

ГЛАВА 2 ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ

§4. История создания языка Паскаль. Алфавит языка.


почти во всех делах самое

трудное – начало.

( Ж..-Ж.. Руссо)

4.1. Èñòîðèÿ ÿçûêà Ïàñêàëü. В 1968 г. швейцарский учёный Íиклаус Âèðò, разработал новый язык программирования. Язык был назван в честь великого французского математика и механика Блеза Паскаля, в 1648 г. создавшего первую счётную машину. В 1971 году Н. Вирт выпустил описание языка Паскаль. А в 1975 году было разработано руководство для пользователей языка Паскаль. Язык Ïàñêàëü áûñòðî ïîëó÷èë øèðîêîå ðàñïðîñòðàíåíèå благодаря тому, что он

- прост в изучении;

-отражает фундаментальные идеи алгоритмов в легко воспринимаемой форме;

-позволяет реализовать идеи оптимального программирования и чёткой организации данных;

- позволяет использовать простые и гибкие структуры управления: ветвлений, циклов;

- программы, разрабатываемые на языке Паскаль, очень надежны в использовании.

Международный стандарт языка Паскаль был утверждён в 1982 г.

Вы начинаете изучение системы программирования TURBO PASCAL. Она включает в себя:
  • Многооконный текстовый редактор, для создания и редактирования текстов программ на языке Паскаль.
  • Компилятор (переводчик) текста программ с языка Паскаль в программу на языке машинных кодов.
  • Пошаговый отладчик программ.
  • Компоновщик программ.
  • Систему помощи.

Первоначально программы на языке Паскаль писались, компилировались и выполнялись с помощью отдельных программных средств. Ñèñòåìà Òóðáî Ïàñêàëü ïîÿâèëàñü íà ðûíêå ïðîãðàììíûõ ïðîäóêòîâ â 1984 ãîäó. Создателем системы Турбо Паскаль стал Филипп Кон, впоследствие создавший фирму «Borland International», которая на протяжении ряда лет совершенствовала систему Турбо Паскаль. В 1992 году фирмой были выпущены на рынок два пакета программирования, основанные на использовании языка Паскаль: Borland Pascal 7.0 и Turbo Pascal 7.0.

4.2. Àëôàâèò ÿçûêà. Любой естественный язык (русский, английский и др.) начинается с алфавита. Используя алфавит, мы составляем слова; слова объединяем во фразы, соблюдая синтаксические правила данного языка. Язык программирования можно уподобить очень примитивному иностранному языку с жесткими правилами, не имеющими исключений. Изучение иностранного языка обычно начинают с алфавита, затем переходят к простым словам, далее рассматривают законы построения фраз, и только в результате длительной практики становится возможным свободно выражать на этом языке свои мысли. Примерно так же поступим и мы при изучении языка.

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

В алфавите языка Паскаль можно выделить три группы знаков: буквы, цифры и специальные символы.

В качестве букв используются латинские буквы от А до Z. Цифрами являются обычные десятичные цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

Группа специальных символов довольно многочисленна, и в ней можно выделить:

1) Ñèìâîë ïîä÷åðêèâàíèÿ.

2) Ñèìâîë ïðîáåë.

3) управляющие сèìâîëû (êîäы которых îò 0 äî 31).

4) Ñèìâîëû:

+ - * / = < > [ ] , . ( ) : ; @ $ # ' { }

5) Ñîñòàâíûå ñèìâîëû:

<> <= >= := (* *) (. .) ..

Ïðîáåëû ìåæäó ýëåìåíòàìè ñîñòàâíûõ ñèìâîëîâ íåäîïóñòèìû.

Из отдельных символов языка образуются слова, которые имеют определённый смысл в программе. Слова в тексте разделяются пробелами или другими специальными символами. Транслятор языка Паскаль не различает прописные и строчные буквы латинского алфавита. Поэтому слова END, End, eND, end воспринимаются им одинаково.

Примеры слов в программе:

Program, primer, summa, begin, end.

Если между словами стоит какой-нибудь разделитель, например, знаки «+», «-», «:», «;», «(», «)» и другие, то пробел можно ставить до и после разделителя, но можно его и не ставить. Там, где допускается один пробел, можно ставить любое количество пробелов.

В языке Паскаль существуют служебные слова, смысл которых определён однозначно. Служебные слова не могут быть использованы для других целей. С точки зрения языка это единые символы. Примеры служебных слов: AND, GOTO, PROGRAM, ELSE, IF, RECORD, NOT, ARRAY, REPEAT, UNTIL, BEGIN, IN, SET, END, CASE, CONST, USES, INTERFACE, STRING, LABEL, THEN, OF, DIV, TO, VAR, DO, TYPE, WHILE, DOWNTO, FILE, FUNCTION, PROCEDURE и другие (см. Приложение 1).

Вопросы и задания.
  1. Кем и когда был создан язык Паскаль?
  2. Что включает в себя система программирования TURBO PASCAL?
  3. что составляет алфавит языка Паскаль?

Для любознательных

Весьма любопытны обстоятельства, приведшие Н.Вирта к программированию для электронных вычислительных машин, и существенно повлиявшие на его философию проектирования языков программирования. В юности Клаус серьезно увлекался авиамоделированием, самостоятельно спроектировав и построив больше 20 моделей. Он был в числе первых трех цюрихских авиамоделистов, выписавших из Англии в 1952 г. радиокомплекты для дистанционного управления. Электроника оказалась ненадежной, и Клаусу пришлось с ней разбираться, что и привело его в 1954 г. на факультет электротехники знаменитого Цюрихского технического университета ETH. В 50-х гг. развитие электронной вычислительной техники проходило в лоне электротехники с участием математиков в качестве консультантов и программистов (фон Нейман, Тьюринг и др.). Оценив потенциал программируемых управляющих устройств на основе электронных вычислительных машин, начинающий ученый окончательно занялся проблемой создания для них программного обеспечения, находившуюся тогда в зародыше. Автор трёх языков программирования Н.Вирт (Паскаль, Модула-2 и Оберон) полностью посвятил себя разработке программ безопасности летательных аппаратов.

Безопасность летательных аппаратов должна начинаться уже с компиляторов, используемых для создания бортового программного обеспечения: жизнь пилотов и пассажиров нельзя ставить в зависимость от случайных "зевков" программиста. Многократно доказано, что такие "зевки" в больших проектах неизбежны — такова природа человеческого мозга. Единственный способ исключить подобные ошибки — использовать адекватные инструменты, т.е. надлежа-щим образом спроектиро-ванные языки программи-рования и компиляторы для них, построенные система-тическими математизиро-ванными методами. История постоянно подтверждает пра-воту Н.Вирта. Например, взрыв в 1996 г. ракеты-носителя Ариан-5 стоимостью около 500 миллионов долларов через 40 секунд после старта произошел, как выяснилось, из-за сбоя программного обеспечения: одна из вспомогательных подпрограмм пыталась преобразовать длинное целое значение в короткое без проверки величины значения. Компиляторы Оберона по умолчанию отказываются компилировать такие программы, считая их ошибочными, тем самым "тыкая носом" проектировщика в точки потенциальных сбоев.

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