Создан заказ №3510682
4 января 2019
Разработка компилятора на любом языке программирования
Как заказчик описал требования к работе:
Примерную работу в C# прилагаю в материалах ниже.
Примечания:
1.В случае противоречий в задании между требованиями к типам операций и данных, задание уточняется по согласованию с преподавателем.
2.Задание включает разработку 3-х программ, возможно 3 режима работы одной программы:
- однопроходный нис
ходящий анализатор на основе LL(1) грамматики, с получением результата в виде последовательности номеров правил;
- однопроходный восходящий анализатор, для грамматики какого ни будь типа предшествования, с получением на выходе номеров правил;
- компилятор на основе одного из двух названных ниже анализаторов, выходной язык Си.
3.Пояснительная записка должна содержать:
- текст задания;
- LL(1) грамматику;
- доказательство выполнения LL(1) условий;
- управляющую таблицу нисходящего анализатора;
- ручную трассировку работы анализатора на маленьком примере;
- аналогичные вещи для восходящего анализа;
- описание программного обеспечения;
- листинги текстов программ.
4.Программы могут быть написаны на любом языке программирования, на любом IBM совместимом компьютере.
Описание компилятора
1) Все арифметические, логические операции и оператор присваивания - в префиксной форме.
Вид синтаксической конструкции:
Последовательность операторов цикла с параметром:
for
,
в теле которых находится оператор присваивания, имеющий в левой части переменную с индексом.
2) Представление идентификаторов.
Размер идентификатора: Произвольная длина, в пределах строки, распознаются первые n символов, конец идентификатора определяется разделителем, например пробелом.
3) Кодирование служебных слов: Выделяются специальными символами
4) Кодирование знаков операций: Служебные слова для всех операций, например: and eq sub.
5) Представление чисел: Вещественные десятичные с точкой.
6) Логические операции и отношения: Равно. Не равно. Конъюнкция.
7) Операции над числовыми и символьными величинами: Вычитание. Конкатенация. Выделение подстроки.
8) Операнды выражений, вид операнда: Вещественные константы. Булевское поле записи. Вещественное поле записи. Булевские переменные. Символьные переменные
подробнее
Заказчик
заплатил
заплатил
100 ₽
Заказчик не использовал рассрочку
Гарантия сервиса
Автор24
Автор24
20 дней
Заказчик принял работу без использования гарантии
5 января 2019
Заказ завершен, заказчик получил финальный файл с работой
5
Разработка компилятора на любом языке программирования.docx
2019-01-08 21:22
Последний отзыв студента о бирже Автор24
Общая оценка
5
Положительно
За данную работу оценку не выставляли, а был зачет/незачет. Отрицательного комментария от преподавателя я не получила. Работа с автором понравилась!!! Автор всегда на связи, отвечает на все вопросы! Рекомендую!!!