Языки программирования - шпаргалка - файл n1.doc

приобрести
Языки программирования - шпаргалка
скачать (593.5 kb.)
Доступные файлы (1):
n1.doc594kb.10.06.2012 06:24скачать

n1.doc

  1   2   3   4   5   6   7   8   9   ...   20


Языки программирования и методы трансляции.

 1. ФОРМАЛЬНЫЕ ЯЗЫКИ И ГРАММАТИКИ

 

Искусственные языки, в отличие от языков естественных, на которых общаются люди различных национальностей, как правило, используются для создания письменных текстов. Такие языки значительно проще естественных языков, поскольку в них отсутствуют неоднозначности, синонимы, упрощен синтаксис и семантика, а также существенно снижена контекстная зависимость. Основным назначением искусственных текстов является передача информации компьютерам и управляющим устройствам. Текст представляет собой задание, которое должно выполнять управляющее устройство или компьютер. Текст такого задания, как правило, создается человеком, поэтому язык написания текста, который называется входным языком строится таким образом, чтобы он был понятен и удобен использующим его людям. Язык, ориентированный на человека, обычно не совпадает с видом команд, выполняемых компьютером. Чтобы выполнить преобразование текста на входном языке в последовательность команд, понятных компьютеру, используют специальные устройства или программы, которые называются трансляторами.

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

Для описания синтаксиса и семантики используются разные средства. Так описание синтаксиса языка может быть выполнено с применением формальных грамматик, а описание его семантики – с помощью атрибутных грамматик.

В настоящей главе рассматриваются только вопросы, связанные с описанием синтаксиса. Пользуясь аналогией с естественным языком, формальный язык можно представить как множество предложений, построенных по определенным правилам. Способ построения предложений формального языка и правила построения могут быть определены с помощью формальных грамматик. При этом множество правил построения называют схемой грамматики, а порядок построения определяется с помощью понятия вывода. Как правило, с помощью правил грамматики можно строить различные выводы, результатом которых являются правила предложений языка. Поэтому формальные грамматики часто называют порождающими грамматиками, а вывод – процессом порождения.

В настоящей главе будут определены такие базовые понятия, как: алфавит, цепочка, грамматика, вывод, язык и т.п., на основе которых строится дальнейшее изложение материала. Затем будет рассмотрена одна из возможных классификаций формальных грамматик – классификация по Хомскому. Эта классификация позволяет выделить типы грамматик, используемых на практике для описания языков программирования. В главе будут описаны способы задания синтаксических правил, а также приемы построения формальных грамматик для языка, заданного при помощи словесного описания. В конце главы будут рассмотрены примеры построения простых грамматик для некоторых конструкций языков программирования.

 

1.1.   Определение формальной грамматики и языка

 

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

 

Определение: Конечное множество символов, неделимых в данном рассмотрении, называется словарем или алфавитом, а символы, входящие в множество, - буквами алфавита.

 

Например, алфавит A = {a, b, c, +, !} содержит 5 букв, а алфавит B = {00, 01, 10, 11} содержит 4 буквы, каждая из которых состоит из двух символов.

 

Определение: Последовательность букв алфавита называется словом или цепочкой в этом алфавите. Число букв, входящих в слово, называется его длиной.
  1   2   3   4   5   6   7   8   9   ...   20


Учебный материал
© nashaucheba.ru
При копировании укажите ссылку.
обратиться к администрации