Лексический, синтаксический, семантический анализ и синтез кода

Отменен
Заказ
4556767
Раздел
Программирование
Предмет
Другое
Антиплагиат
Не указан
Срок сдачи
10 Мая 2022 в 23:55
Цена
2 000 ₽
Блокировка
5 дней
Размещен
10 Апр 2022 в 12:46
Просмотров
96
Описание работы

Системное программное обеспечение.

Необходимо написать программу/скрипт, которая переводит входной код программы на выходной.

В качестве кода входной программы выступает урезанный по синтаксису код С++, пример такого кода приведен в файле, его будет вполне достаточно.

Выходной код языка: Pascal или python.

Итоговое ПО должно определить:

  • операции сравнения (, ==, !=) - большего не требуется
  • оператор условия if-else
  • Инкремент и декремент ++, --
  • Типы переменных int
  • имена переменных.

Привожу в файле код, которого будет достаточно для выполнения работы.

Также я сделал 1-й пункт на HTML+JS (Можете либо продолжить выполнение на JS, либо переписать на с-подобном языке: Java, C#, C++, python 2.*/3.*)


Лаб 1. Лексический анализ - распарсинг программы, выделение ключевых слов,

идентификаторов и переменных ( построить таблицу)


Лаб 2. Синтаксический анализ - построить дерево разбора по результатам

предыдущей работы, можно сделать попроще. Каждый узел будет классом или

структурой, которая содержит описание конструкции языка - оператор,

переменные, над которыми он выполняется, какие-то атрибуты, и, возможно,

список из таких же структур, если это, например, цикл, чтобы отобразить

вложенность.


Лаб 3. Семантический анализ - проанализировать дерево и поискать


Лаб 4. Синтез. Проанализировать дерево и построить код на выходном языке.

Нужна такая же работа?
  • Разместите заказ
  • Выберите исполнителя
  • Получите результат
Гарантия на работу 1 год
Средний балл 4.54
Стоимость Назначаете сами
Эксперт Выбираете сами
Уникальность работы от 70%
Нужна аналогичная работа?
Оформи быстрый заказ и узнай стоимость
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Темы журнала
Показать ещё
Прямой эфир