Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум по ТВП.doc
Скачиваний:
36
Добавлен:
27.01.2015
Размер:
222.21 Кб
Скачать

Министерство образования и науки РФ

Федеральное агентство по образованию

Саратовский государственный

технический университет

Лабораторный практикум

по дисциплине

«Теория вычислительных процессов»

для студентов специальности 220400

Электронное издание локального распространения

Одобрено

редакционно-издательским советом

Саратовского

государственного

технического университета

Саратов, 2006 г.

Все права на размножение и распространение в любой форме остаются за разработчиком

Нелегальное копирование и использование данного продукта запрещено

Составители: Сайкин Александр Иванович, Данилова Татьяна Владимировна

Рецензент

410054, Саратов, ул.Политехническая, 77

Научно-техническая библиотека СГТУ

тел. 52-63-81, 52-56-01

http://lib.sstu.ru

Регистрационный

номер

© Саратовский государственный технический университет, 2006

Введение

Данный лабораторный практикум предназначен для студентов специальности 220400 «Программное обеспечение вычислительной техники и автоматизированных систем» и рассчитан на 18 аудиторных часов и 20 часов самостоятельной работы студента по изучению литературы, программированию и оформлению отчётов.

Выполнение лабораторных работ составляющих практикум предполагает исследование студентами моделей и характеристик вычислительных процессов. Методика исследований заключается в моделировании вычислительных процессов на ПЭВМ и аналитической обработке полученных результатов.

Лабораторная работа 1

Формульный компилятор

Данная лабораторная работа рассчитана на четыре аудиторных часа. Самостоятельная работа по изучению литературы, оформление отчёта ещё шесть часов.

Объект исследования - формульный транслятор, Цель исследования состоит в изучении проблематики разработки трансляторов с алгоритмических языков. Метод предполагает использование алгоритма рекурсивного спуска и написание программы транслятора. Работа выполняется в дисплейном классе.

1.1. Содержание работы.

Формульный транслятор эта программа, которая переводит исходную программу, написанную на входном языке, в объектный псевдокод, который в последствии, после необходимой оптимизации, может быть заменён машинным кодом с абсолютной адресацией.

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

Оператор присвоения имеет общий вид для всех вариантов

Y=Y(x).

Результатом выполнения программы должен быть текст в объектном псевдокоде. Для чего необходимо оговорить его содержание. В работе рекомендуется использовать так называемые четвёрки, имеющие вид

КОП, А1, А2, А3,

где: КОП - код операции,

А1- адрес первого операнда,

А2 - адрес второго операнда,

А3 - адрес результата.

Хотя возможны и другие варианты, например, по двухадресной и одноадресной схемам.

Используемые данные могут быть как целыми, так и с плавающей точкой.