29376

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

Доклад

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

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

Английский

2013-08-21

95.5 KB

0 чел.

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

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

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

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

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

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

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



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

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


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

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

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


 

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

84007. Навчальний переказ у формі прес-конференції 153.5 KB
  Мета: Вчити дітей передавати послідовно зміст зв’язного тексту. Розширити і збагатити знання учнів про сову, осмислити значення цієї пташки. Розвивати уяву, фантазію, спостережливість. Виховувати бережне ставлення до природи. Засобом рольової гри та нестандартним підходом...
84008. Общая характеристика эволюции управленческой мысли 19.83 KB
  Первобытно общинный рабовладельческий феодальный периоды. Индустриальный период. Период систематизации научно практических знаний. период связан с бурным развитием промышленности научные открытия и изобретения на фоне буржуазных революций.
84009. Школа научного управления и ее современные последователи 17.67 KB
  В основе учения этой школы лежат следующие принципы: использование научного анализа для определения оптимальных способов выполнения задач; отбор работников наиболее подходящих для выполнения определенных задач и их обучение; обеспечение работников необходимыми ресурсами; систематическое и правильное использование материального стимулирования для повышения производительности труда; выделение планирования в функцию управления; становление менеджмента как самостоятельной науки; формирование функций менеджмента. Следовательно школа научного...
84010. Теоретические воззрения Тейлора, «тейлоризм» 22.05 KB
  Тейлором 1856 1915 который возглавил движение научного управления. Он заинтересовался не эффективностью человека а эффективностью деятельности организации что и положило начало развитию школы научного управления. Благодаря разработке концепции научного управления менеджмент был признан самостоятельной областью научных исследований. В своих работах Управление циклом 1903 и Принципы научного менеджмента 1911 Ф.
84011. Теоретические взгляды Г.Л. Ганнта 23.47 KB
  Ганнт является первооткрывателем в области оперативного управления и календарного планирования деятельности предприятий; он разработал целую систему плановых графиков графики Ганнта позволивших благодаря его высокой информированности осуществлять контроль за запланированным и составлять календарные планы на будущее. К числу организационных изобретений Ганнта следует отнести его систему заработной платы с элементами повременной и сдельной форм оплаты. Многие идеи Ганнта получили признание во всем мире и применяются в наши дни например...
84012. Теоретическое наследие Ф. и Л. Гилбрет 24.28 KB
  Солидный вклад в научную теорию управления внесли супруги Фрэнк и ЛилианГилбрет которые в 20е гг. нашего столетия были активными сторонниками научного управления. Это оказало большое влияние на развитие школы научного управления. концентрация производства и монополизация капитала привели к сосредоточению на крупных и мелких предприятиях работников различных специальностей что вызвало необходимость установления функционального кадрового управления.
84013. Развитие теории управления в работах основных представителей классической (административной) школы менеджмента 24.31 KB
  Разновидностью классической школы управления является административная школа. Он разделил весь процесс управления на пять основных функций которые мы до сих пор применяем в управлении организацией: планирование организация подбор и расстановка кадров руководство мотивация и контроль.Файоля в 20е годы было сформулировано понятие организационной структуры фирмы элементы которой представляют систему взаимосвязей серию непрерывных взаимосвязанных действий функций управления.
84014. Теоретические воззрения А. Файоля 19.8 KB
  Он разделил весь процесс управления на пять основных функций которые мы до сих пор применяем в управлении организацией: планирование организация подбор и расстановка кадров руководство мотивация и контроль.Файоля в 20е годы было сформулировано понятие организационной структуры фирмы элементы которой представляют систему взаимосвязей серию непрерывных взаимосвязанных действий функций управления.Файолем принципы управления следует признать самостоятельным результатом науки управления администрирования отсюда и название ...
84015. Характеристика принципов управления А.Файоля 23.1 KB
  Единство действий группа работников должна работать только по единому плану направленному на достижение одной цели. Подчинённость интересов интересы работника или группы работников не должны ставиться выше интересов организации. Вознаграждение наличие справедливых методов стимулирования работников. Корпоративный дух сплочённость работников единство силы.