Файл: Отчеты оформляются в виде файлов формата Microsoft Word (файлы других форматов не принимаются), размер шрифта 1214.docx
Добавлен: 12.01.2024
Просмотров: 2290
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Основные требования к отчетам по лабораторным работам
Лабораторная/практическая работа № 1
Лабораторная/практическая работа № 2
Лабораторная/практическая работа № 3
Лабораторная/практическая работа № 4
Лабораторная/практическая работа № 5
Лабораторная/практическая работа № 6
Лабораторная/практическая работа № 7
Лабораторный практикум
Основные требования к отчетам по лабораторным работам
-
Отчеты оформляются в виде файлов формата Microsoft Word (файлы других форматов не принимаются), размер шрифта: 12-14. -
На титульном листе должны быть указаны вариант задания на курсовую работу и имя системы правил в личном каталоге, которую надо проверять. -
Перечень разделов, которые должны присутствовать в отчете, указан в каждом задании на работы 1-8. -
Тестовые программы в отчете должны быть приведены только в текстовом представлении (ни в коем случае не в виде скриншотов). -
Все элементы отчета, в первую очередь – скриншоты, должны быть легко читаемы (без поворотов страницы и изменения масштаба).
Лабораторная/практическая работа № 1
-
Название работы: «Лексика языков программирования. Регулярные выражения». -
Цели работы: освоение основных навыков работы с учебным пакетом программ автоматизации разработки трансляторов ВебТрансБилдер, изучение и освоение пользовательского интерфейса пакета и форматов исходных данных/результатов работы, изучение метаязыка регулярных выражений и технологии разработки систем правил определения лексики языков программирования, изучение основных понятий теории конечных автоматов без памяти. -
Основные теоретические сведения:
-
[<произвольный символ>], например: [a]. Говорят, что такое регулярное выражение порождает единственную цепочку, состоящую только из этого символа ([a] a). -
[<перечень символов>], например [aA]. Такое выражение порождает несколько цепочек, каждая из которых содержит в точности один символ из указанного в квадратных скобках перечня ([aA] а и [aA] А). -
[<диапазон символов>], например [0–9]. Это выражение можно считать сокращенной формой записи выражения вида [0123456789]. Оно порождает
10 цепочек, каждая из которых содержит единственную десятичную цифру.
В описываемом диалекте языка регулярных выражений используются метасимволы «[», «]» и «–», не принадлежащие определяемым цепочкам символов. Существуют и другие метасимволы, которые будут определены позже.С двумя формами записи первичного регулярного выражения (перечень символов и диапазон символов) связаны три умолчания, о которых всегда нужно помнить.Во-первых, для указания диапазона символов необходимо точно знать таблицу кодирования символов, чтобы быть уверенным, что в диапазон не попадут «лишние» символы. Например, при использовании кодировки ASCII запись вида [a–F] нельзя использовать для определения старших шестнадцатеричных цифр. Правильной будет запись [a–fA–F].Во-вторых, считается, что после символа с максимальным значением кода следует символ с минимальным значением (в системе кодирования ASCII после символа с кодом 255 идет символ с кодом 0).В третьих, метасимвол дефиса (минуса) нельзя определять «внутри» перечня. Если этот метасимвол нужно определить как символ алфавита описываемого языка, то в первичном выражении он должен быть записан либо сразу после метасимвола «[», либо непосредственно перед метасимволом «]».Так, например, регулярные выражения [–+*/] или [+/*–] порождают каждое ровно по четыре цепочки: –,+,*,/, но выражение [+–*/] в системе кодирования ASCII порождает ровно 256 цепочек длины 1, т.е. цепочки, содержащие все символы этого алфавита.С учетом умолчаний допускается записывать перечни и диапазоны последовательно без каких-либо разделителей между метасимволами «[» и «]». Поэтому регулярные выражения [abk–osx–z] и [abklmnosxyz] являются эквивалентными, т. е. порождают одно и то же множество цепочек символов.При форматировании текстов программ на экране или бумаге для удобного восприятия их человеком обычно используются такие символы, как табуляция, перевод строки и возврат каретки.Для них в метаязыке регулярных выражений используются общепринятые обозначения (заимствованные из С-подобных языков):\t – символ табуляции,\n – символ новой строки,\r – символ перевода каретки.Аналогичный способ (экранирование следующего символа) применяется для представления символов \, [, ], ", являющихся одновременно метасимволами языка регулярных выражений:\\ – один символ \ ,\[ – символ [ ,
\] – символ ] ,\" – символ " .Простым называется произвольное регулярное выражение, заключенное в круглые скобки. Например, выражение ([0–9]) – простое выражение.К первичным и простым (в некоторых диалектах – только к первичным) регулярным выражениям применяются следующие знаки операций (первые три называются квантификаторами), используемые для описания цепочек, длина которых больше единицы, и пустых цепочек (т. е. цепочек длины 0).
-
Операция «Пусто или в точности одно» (знак операции ?).
-
Операция «Одно или несколько» (знак операции +).
-
Операция «Пусто, одно или несколько» (знак операции *):
-
Операция конкатенации (не имеет знака операции).
Во многих диалектах метаязыка регулярных выражений допускаются выражения вида "<произвольная строка символов>", каждое из которых порождает цепочку, совпадающую с <произвольная строка символов>. Например, выражение "else" считается эквивалентным выражению [e][l][s][e].
-
Операция выбора (знак операции | ).
| Ident | : | [a–zA–Z][0–9a–zA–Z]* |
| Const | : | [0–9]+([.][0–9]*)? |
| Const | : | [0–9]*[.][0–9]+ |
| WordForFormatting | : | [ \r\n\t]+ |
| SignOfOperation | : | [–+*/] |
| Delimiter | : | [;] |
| AssignSign | : | [=] |
-
Порядок выполнения работы (рекомендуется использовать в качестве примера систему правил Samples/Пример1):
-
Изучить интерфейс пакета ВебТрансБилдер: запуск, регистрация, состав элементов основного окна, команды меню. Используя справку ВебТрансБилдера (команда меню «Помочь»), изучить структуру таблицы системы редактируемых правил основного окна, приемы и способы формирования/редактирования ее содержимого. -
Освоить:
-
настройку и сохранение личных параметров (пункт меню «Настроить»); -
открытие имеющейся в базе данных системы правил (пункт меню «Открыть»); -
редактирование правил (щелчок левой кнопкой мыши по заполненной строке таблицы «Видимые-редактируемые правила»); -
автодобавление правила (щелчок левой кнопкой мыши по последней (пустой) строке таблицы «Видимые-редактируемые правила»); -
операции сортировки таблицы правил (щелчок левой кнопкой мыши по клетке «Левая часть» заголовка таблицы); -
скрытие/отображение действий (щелчок левой кнопкой мыши по клетке «Правая часть» заголовка таблицы); -
добавления пустых строк, удаления, вырезания и вставки правил (щелчок правой кнопкой мыши по правилу в таблице); -
сохранение системы правил (пункт меню «Сохранить как»).