kletochka.ru -

купить или арендовать доменное имя онлайн
+7 (495) 545-21-33 support@site.su
  • Домены совпадающие с kletochka
  • Покупка
  • Аренда
  • kletochka.ru
  • 100 000
  • 1 000
  • Домены начинающиеся с kletochk
  • Покупка
  • Аренда
  • kletochky.ru
  • 100 000
  • 1 000
  • Домены с синонимами, содержащими kletoch
  • Покупка
  • Аренда
  • сотовое.рф
  • 70 000
  • 700
  • сотовой.рф
  • 70 000
  • 700
  • Домены с транслитом, содержащими kletoch
  • Покупка
  • Аренда
  • sotovyi.ru
  • 80 000
  • 800
  • сотовый.su
  • 18 334
  • 183
  • Рекомендуемые домены
  • Покупка
  • Аренда
  • 5000.рф
  • 100 000
  • 1 000
  • авиа.su
  • 51 668
  • 517
  • авиа.рф
  • 900 000
  • 9 000
  • авиалиния.рф
  • 100 000
  • 1 000
  • адмирал.su
  • 20 000
  • 200
  • азией.рф
  • 70 000
  • 700
  • алмаз.su
  • 60 000
  • 600
  • алмазы.рф
  • 1 500 000
  • 15 000
  • альтернативная.рф
  • 70 000
  • 700
  • альтернативное.рф
  • 70 000
  • 700
  • альтернативные.рф
  • 50 000
  • 500
  • альтернативный.рф
  • 50 000
  • 500
  • ассортимент.su
  • 35 000
  • 350
  • аттестат.рф
  • 450 000
  • 4 500
  • аттестации.рф
  • 250 000
  • 2 500
  • африкой.рф
  • 70 000
  • 700
  • безумно.рф
  • 70 000
  • 700
  • безумные.рф
  • 70 000
  • 700
  • безумный.рф
  • 50 000
  • 500
  • босоножки.su
  • 20 000
  • 200
  • бронь.su
  • 20 000
  • 200
  • бюро.su
  • 20 000
  • 200
  • валютная.рф
  • 70 000
  • 700
  • валютные.рф
  • 70 000
  • 700
  • валютный.рф
  • 150 000
  • 1 500
  • вертолетами.рф
  • 70 000
  • 700
  • вертолетов.рф
  • 70 000
  • 700
  • вертолетом.рф
  • 70 000
  • 700
  • вертолеты.su
  • 35 000
  • 350
  • взыскания.рф
  • 70 000
  • 700
  • виски.su
  • 60 000
  • 600
  • виски.рф
  • 550 000
  • 5 500
  • внести.рф
  • 70 000
  • 700
  • вносить.рф
  • 50 000
  • 500
  • вождения.рф
  • 200 000
  • 2 000
  • вожденье.рф
  • 70 000
  • 700
  • выпиваем.рф
  • 70 000
  • 700
  • вычислить.рф
  • 50 000
  • 500
  • гены.рф
  • 350 000
  • 3 500
  • герпесы.рф
  • 100 000
  • 1 000
  • гибель.рф
  • 50 000
  • 500
  • глушители.рф
  • 250 000
  • 2 500
  • годовой.рф
  • 70 000
  • 700
  • град.su
  • 35 000
  • 350

LL(1)

{{Нет ссылок|дата=12 мая 2011}} Нисходящий алгоритм синтаксического разбора. Прост в написании вручную без использования автоматических генераторов. Используется для разбора ряда языков программирования, таких, как [[Pascal]] (по некоторым сведениям, язык разработан с умыслом сделать его разбираемым по LL(1)). Очень быстр в исполнении, и имеет характерное сообщение об ошибке вида "ожидался такой-то символ". == Понятие "направляющие символы правила" == Для каждого нетерминала A в грамматике генерируется множество терминалов First(A), определенное следующим образом: * если в грамматике есть правило с A в левой части и правой частью, начинающейся с терминала, то данный терминал входит в First(A) * если в грамматике есть правило с A в левой части и правой частью, начинающейся с нетерминала (обозначим B), то First(B) строго входит в First(A) * никакие иные терминалы не входят в First(A) Для каждого правила генерируется множество направляющих символов, определенное следующим образом: * если правая часть правила начинается с терминала, то множество направляющих символов состоит из одного этого терминала * иначе правая часть начинается с нетерминала A, тогда множество направляющих символов есть First(A) (возможны обобщения этих определений для случая наличия правил вида A -> null) Понятно, что First(A) есть объединение множеств направляющих символов для всех правил с A в левой части. Грамматика разбираема по LL(1), если для любой пары правил с одинаковой левой частью множества направляющих символов не пересекаются. == Описание анализатора == Используется стек, где находятся номера терминалов и нетерминалов, входной (терминалы) и выходной (номера правил) потоки. Вначале в стек заносится E - начало грамматики. Далее для каждого нового символа из входного потока, пока он не закончился: * если на вершине стека терминал, и он совпадает с символом входного потока - то а) вытолкнуть терминал из стека и б) потребить символ входного потока. * если на вершине стека терминал, и он не совпадает с символом входного потока - то это синтаксическая ошибка "ожидался такой-то символ" (тот, что на стеке). * иначе на вершине стека нетерминал, обозначим его A. Ищутся все правила с ним в левой части, для каждого правила просматриваются множества направляющих символов на предмет нахождения символа входного потока, он не может найтись там более одного раза (иначе грамматика не разбираема по LL(1)). * если символ нашелся, то осуществляется применение этого правила - номер правила выводится в выходной поток, со стека выталкивается один символ (это A) и взамен вталкивается все правая часть правила, крайне левый символ правой части - последним. Символ входного потока не потребляется. * иначе символ не нашелся вовсе. Тогда, если есть правило вида "A -> null" - то A выталкивается с вершины стека. Символ входного потока не потребляется. * иначе это синтаксическая ошибка, сообщение может быть выведено в виде "ожидалось одно из" и далее списком множество First(A). [[Категория:Синтаксический анализ]]

19.09.2013 12:42:48