Реферат: Лабораторные работы по Теории вычислительных процессов и структур
Министерство образования Российской Федерации
Саратовский государственный технический университет
Формульный компилятор
методические указания к выполнению лабораторной
работы по курсу «Теория вычислительных процессов
и структур для студентов специальности ПВС
Составил доцент кафедры ПВС
Сайкин А.И.
Саратов - 2001 г.
Введение
Данная лабораторная работа рассчитана на четыре аудиторных часа. Самостоятельная работа по изучению литературы, оформление отчёта ещё шесть часов.
Объект исследования формульный транслятор, Цель исследования состоит в изучении проблематики разработки трансляторов с алгоритмических языков. Метод предполагает использование алгоритма рекурсивного спуска и написание программы транслятора. Работа выполняется в дисплейном классе.
1. Содержание работы.
Формульный транслятор эта программа, которая переводит исходную программу, написанную на входном языке, в объектный псевдокод, который в последствии, после необходимой оптимизации, может быть заменён машинным кодом с абсолютной адресацией.
Для написания программы на входном языке необходимо создать язык, в который бы входили: заголовок программы, оператор описания типа переменной, оператор ввода переменной, оператор присвоения и оператор вывода результата. Для оператора присвоения необходимо предусмотреть знаки арифметических операций, скобки и элементарные функции, которые выдаются вместе с вариантом задания. А также, разделители и служебные символы. В связи с этим разрабатывается контекстно-свободная грамматика, которая в последствии позволит провести грамматический разбор программы на исходном языке. Грамматическому разбору должен предшествовать лексический анализ, который обычно не вызывает затруднений (см. лабораторные работы №1 и №2).
Оператор присвоения имеет общий вид для всех вариантов
Y=Y(x).
Результатом выполнения программы должен быть текст в объектном псевдокоде. Для чего необходимо оговорить его содержание. В работе рекомендуется использовать так называемые четвёрки, имеющие вид
КОП, А1, А2, А3,
где: КОП - код операции,
А1- адрес первого операнда,
А2 - адрес второго операнда,
А3 - адрес результата.
Хотя возможны и другие варианты, например, по двухадресной и одноадресной схемам.
Используемые данные могут быть как целыми, так и с плавающей точкой.
2. Задание по работе.
1. Получить вариант задания у преподавателя.
2. Разработать язык формульного транслятора.
3. На основе разработанной регулярной грамматики разработать
программу лексического анализатора.