29376

Принципы работы сканера

Доклад

Информатика, кибернетика и программирование

Синтаксис целых констант представляется: целое ::=цифра знак цифра целое цифра знак ::= Для представления грамматики состояния целых констант диаграмма имеет вид:Вершины соответствуют состояниям автомата и определяются нетерминальными символами. Построим диаграмму состояний для автомата который распознает лексемы трех типов: целые константы десятичные константы идентификаторы идентр ::=буква идентр буква идентр цифра десятичная константа: дес.число цифра смеше число цифра смеше число ::= целое целое ::=цифра знак цифра целое цифра...

Английский

2013-08-21

95.5 KB

0 чел.

12) Принципы работы сканера.

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

<целое>::=цифра|<знак>цифра|<целое>цифра
<знак>::= +|-
Для представления грамматики состояния целых констант диаграмма имеет вид:

Вершины соответствуют состояниям автомата и определяются нетерминальными символами. Дуги описывают возможные переходы между состояниями и соответствуют продукции грамматики.
Для заданной грамматики определяются следующие лексемы:
1) каждому нетерминальному символу сопоставляется вершина графа с соответствующим именем
2) добавляется дополнительная вершина, соответствующая начальному состоянию автомата с именем Старт
3) каждому правилу вывода следующего вида А→а сопоставляется дуга, связывающая вершины Старт и А, которая помечается терминальным символом а
4) каждой продукции А→Ва сопоставляется дуга 
, которая также помечается терминальным символом а
Распознавание лексем с использованием диаграмм состояний конечного автомата осуществляется следующим образом:
1) исходным состоянием является состояние Старт
2) последовательно сканируются (считываются) символы входной цепочки и в соответствии с очередным считывающимся символом выполняется переход автомата в следующее состояние. Этот переход происходит из текущей вершины в то состояние ( вершину), в которую направлена дуга, помеченная символом, совпадающим со считанным символом входной цепи.
3) Переходы между состояниями продолжаются до остановки автомата, которая происходит в двух случаях:
• Считаны все символы входной цепочки
• Переход в следующее состояние невозможен, т.к. не найдена дуга, помеченная считанным символом.
В итоге лексемы будут распознаны, если работа автомата заканчивается в состоянии, соответствующем начальному символу грамматики. На диаграмме эта вершина выделена 

По мере считывания символов входной цепочки фиксируется символ, на котором автомат начинает работу ( выходит из состояния Старт) и на котором заканчивает работу, т.е. останавливается. 
Сама лексема состоит из тех считанных символов, начиная с которых автомат вышел из сосояния старт и до символа, на котором автомат завершил работу. 

Построим диаграмму состояний для автомата, который распознает лексемы трех типов: целые константы, десятичные константы, идентификаторы

<идент-р>::=буква|<идент-р>буква|<идент-р>цифра



десятичная константа:

<дес.число>::=<дес.число>цифра|<смеш-е число>цифра
<смеш-е число>::=<целое>
<целое>::=цифра|<знак>цифра|<целое>цифра
<знак>::=+|-


С точки зрения процесса трансляции в целом, сканер может быть реализован в двух вариантах:
1) сканер выполняет полный лексический анализ всей программы и формирует эквивалентную последовательность лексем, которая потом используется на фазе синтаксического анализа

2) сканер выполняется в виде подпрограмм, к которым обращается синтаксический анализатор, когда требуется очередная лексема для грамматического разбора

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


 

А также другие работы, которые могут Вас заинтересовать

34497. Графический дизайн в 1920-х гг. Окна роста. В. Маяковский. Д.А. Моор. Агитационно-массовое искусство 35.5 KB
  Окна роста. Окна Роста или Окна сатиры Роста особого типа плакаты на политические военные и хозяйственные темы дня которые выпускались с осени 1919 года по январь 1922 года включительно. Окна Роста обладают рядом устойчивых признаков. Типичная структура Окна Роста: несколько от 2 до 14 самостоятельных рисунков расположенных в логической последовательности и вместе с сопровождающим их текстом раскрывающих единую тему.
34498. Конструктивизм – главенствующий стиль Советской России. Этапы развития 32.5 KB
  Конструктивизм возник в Советской России как концепция формообразования в художественном творчестве и производственном искусстве 1920х гг. Первый этап сложения концепции конструктивизма экспериментальнохудожественный. Конструктивизм исходил из концепции построения форм основанной на выражении внутренних структурных связей между абстрактными геометрическими элементами изучении выразительности сочетаний различных материалов.
34499. Искусство первобытнообщинного строя. Зарождение искусства и первые шаги художественного развития человечества. Мадленский период. Росписи Альтамиры, Ляско. Анималистический жанр. Образ человека в первобытном искусстве. Мезолит. Наскальные росписи Восточн 23.57 KB
  Образ человека в первобытном искусстве. Первобытное искусство отразило первые представления человека об окружающем мире благодаря ему сохранялись и передавались знания и навыки происходило общение людей друг с другом. Что натолкнуло человека на мысль изображать те или иные предметы До недавнего времени учёные придерживались двух противоположных взглядов на историю первобытного искусства. Например к числу самых древних изображений на стенах пещер эпохи палеолита относятся и оттиски руки человека и беспорядочные переплетения волнистых линий...
34500. Искусство Древнего Египта. Искусство Древнего царства. Архитектура гробниц и храмов. Искусство Среднего царства. Архитектура, скульптура, росписи. Искусство Нового царства. Новый тип храмов (Карнак, Луксор), скульптура, росписи 23.44 KB
  Искусство Древнего Египта. Искусство Древнего Египта живопись скульптура архитектура и другие виды искусства которые зародились в Нильской долине ок. Архитектура Древнего Египта. Скульптура Древнего Египта одна из наиболее самобытных и строго канонически разработанных областей искусства Древнего Египта.
34501. Эгейское искусство. Крито-микенская культура 15.29 KB
  Памятники искусства и материальной культуры важнейшие материалы для изучения эгейской культуры. Районы распространения эгейской культуры: побережье Малой Азии острова Эгейского моря материковая Греция Крит. Развитие центров эгейской культуры на материке Дворцыкрепости Гириафа и Микен. Искусство времени расцвета Микенской культуры XVXIII вв.
34502. Искусство Древней Греции. Архаика. Архитектура. Формы храмов. Ордер. Скульптура, статуи куросов. Вазопись 18.48 KB
  Первые ордера назывались дорическим и ионическим по местам их возникновения затем появился коринфский близкий к ионическому. Архитрав дорического ордера гладкий. Фриз дорического ордера делится на прямоугольные плиты метопы и триглифы имеющие на плоскости три вертикальных желобка. Классическим примером дорического ордера может служить храм Посейдона в Пестуме Италия VI в.
34503. Искусство Древней Греции. Ранняя классика (480-450-е гг. до н. э.) Скульптура. Храм Зевса в Олимпии. Мирон. Вазопись и живопись 13.98 KB
  Мастер Брига: белофонный килик из Вульчи Пляшущая менада Мюнхен Гос. Античные собрания килик Последствия симпосия Вюрцбург Музей Мартина фон Вагнера; Дурис: килик из Капуи Эос с телом Мемнона Париж Лувр Монументальная живопись этого периода.
34504. Искусство Древней Греции. Высокая классика. Афинский акрополь. Фидий. Поликлет. Искусство Древней Греции. Поздняя классика. Скульптура Скопаса, Праксителя, Леохара, Лисиппа 17.09 KB
  Статуи атлетов Дорифор Диадумен Раненая амазонка Гера Аргосская. Произведения Фидия: хризоэлефантинные из золота и слоновой кости статуи Афиныдевы Афина Парфенос и Зевса Олимпийского бронзовые статуи Афинывоительницы Афина Промахос Афины Лемнии дар жителей ова Лемнос Раненой амазонки.э: Аполлона в Фигалии архитектор Иктин – фриз Амазономахия; Ники Бескрылой Аптерос на Акрополе архитектор Калликрат – фриз Битва греков с персами рельефы баллюстрады; Эрехтейона архитекторы Архилох и Филокл – статуи...
34505. Искусство этрусков. Архитектура. Отличие этрусского храма от греческого. Скульптура. Роспись гробниц 15.34 KB
  Искусство этрусков. и в которой наиболее интересным и развитым было искусство этрусков. Происхождение и язык этрусков до сих пор полностью не выяснены. Города этрусков были прекрасно укреплены соединялись благоустроенными дорогами и мостами.