- 1
- 2
- 3
- . . .
- последняя »
Введение В настоящее время языки высокого уровня стали основным средством разработки программ. Поэтому компиляторы составляют существенную часть системного программного обеспечения ЭВМ. Сегодня только очень малая часть программного обеспечения, требующая особой эффективности, разрабатывается с помощью ассемблеров. В настоящее время имеет применение довольно большое количество языков программирования. Наряду с традиционными языками, такими, например, как Фортран, широкое распространение получили так называемые «универсальные» языки (Паскаль, Си, Модула-2, Ада) и др., а также некоторые специализированные (например, язык обработки списочных структур Лисп). Кроме того, большое распространение получили языки, связанные с узкими предметными областями, такие, как входные языки пакетов прикладных программ.
Для ряда названных языков имеется довольно много реализаций для различных операционных систем и архитектур ЭВМ.
В рамках традиционных последовательных машин развивается большое число различных направлений архитектур. Примерами могут служить архитектуры CISC, RISC. Такие ведущие фирмы, как Intel, Motorola, Sun, начинают переходить на выпуск машин с RISC-архитектурами. Естественно, для каждой новой системы команд требуется полный набор новых компиляторов с распространенных языков.
Поэтому важную роль компиляторов в современном системном ПО для ЭВМ невозможно переоценить.
В данной курсовой работе делается попытка создания простого интерпретатора с целью изучения принципов строения и работы этого вида системного ПО. 1. Техническое задание В данной курсовой работе требуется:
Создать программу-интерпретатор, способную получать на входе текстовый файл (в формате ASCII или ANSI) с текстом программы. На выходе - выводит на экран результаты вычислений, определяемых программистом. Если входная программа содержит ошибку - сообщение о типе ошибки.
Интерпретатор должен воспринимать и обрабатывать следующие инструкции:
а) объявление переменной с одновременным присвоением ей начального значения
Имя Переменной = значение или Имя Переменной = выражение
Значение переменной задается вещественным числом в десятичной системе счисления. Например, X=0.06
Выражения записываются по правилам, Например, F=-X/0.01
б) вывод результатов на экран
PRINT (Имя Переменной) или PRINT (выражение)
Например, PRINT(X) и PRINT(X+F)
в) Операндами выражения могут быть вещественные числа и имена объявленных ранее переменных. В выражении допускаются следующие операторы:
+ сумма;
разность, унарный минус;
* произведение;
/ частное;
ABS(…) модуль числа;
^ возведение в степень (степень выражается целым числом ³0);
SQRT(…) квадратный корень;
EXP(…) экспонента;
LN(…) натуральный логарифм.
Порядок выполнения операций может регулироваться скобками ().
Инструкции в тексте программы разделяются точкой с запятой, либо каждая инструкция - с новой строки. 2. Разработка грамматики Список допустимых лексем (слов языка).
Допустимыми являются:
имя переменной = L; (L - буква, C - цифра)
зарезервированные слова =
используемые символы =
Все буквы - маленькие латинские.
Программа состоит из двух основных блоков, парсера и лексера.
Парсер отвечает за разбиение на
- 1
- 2
- 3
- . . .
- последняя »
Похожие работы
Тема: Системы обработки текстов |
Предмет/Тип: Информатика, ВТ, телекоммуникации (Реферат) |
Тема: Системы обработки текстов |
Предмет/Тип: Информатика, ВТ, телекоммуникации (Реферат) |
Тема: Инструментарий CorelDRAW. Возможности обработки текстов |
Предмет/Тип: Информатика, ВТ, телекоммуникации (Реферат) |
Тема: Инструментарий COREL DRAW. Возможности обработки текстов. |
Предмет/Тип: Информатика, ВТ, телекоммуникации (Книга / Учебник) |
Тема: Инструментарий COREL DRAW. Возможности обработки текстов. |
Предмет/Тип: Информационное обеспечение, программирование (Реферат) |
Интересная статья: Основы написания курсовой работы