
МИНИСТЕРСТВО НАУКИ И ОБРАЗОВАНИЯ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Государственное образовательное учреждение
высшего профессионального образования
«Курский государственный технический университет»
Кафедра вычислительной
УТВЕРЖДАЮ:
Зав. кафедрой
техники ____________________ B.C. Титов
(подпись, инициалы, фамилия)
____ _____________ 20___ г.
Пояснительная записка
К курсовой работе по ________________________________________________________
(наименование учебной дисциплины)
на тему ________________________________________________________________________
Автор проекта _________________________ фамилия.
(подпись, дата)
Специальность 230101 Вычислительные машины, комплексы, системы и сети
(номер, наименование)
Обозначение курсовой работы_________________ Группа ВМ – 02ф
Руководитель проекта _____________________ Емельянова Е. Ю.
(подпись, дата)
Проект защищен _________________________ Оценка ______________
(дата)
Члены комиссии ___________________________ Емельянова Е. Ю.
(подпись, дата)
___________________________ Зотов И.В
(подпись, дата)
___________________________ Титов В. С.
(подпись, дата)
Курск 20___ г.
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
Государственное образовательное учреждение
высшего профессионального образования
«Курский государственный технический университет»
Кафедра вычислительной техники
ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ
Студент фамилия. код группа Вм-02Ф
1. Тема _____________________________________________________________
2. Срок представления работы к защите «_____» ___________ 201__ г.
3. Исходные данные для исследования
4
.
Содержание курсовой работы
5
.
Перечень графического материала:
6
.
Руководитель работы
________________________ _____________________
(подпись, дата) (расшифровка подписи)
Задание принял к исполнению ______________ «____» __________ 201___ г.
(подпись)
Содержание
Введение……………………………………………………..…... 5
Разработка транслятора………………………..…….………. 7
Описание команд…………………………………….…….….. 8
Листинг программы на С++……………………...…….......... 12
Тестовый пример……………………………………………… 17
Заключение…………………………………………………….. 18
Библиографический список…………………….…………... 19
Аннотация
В данной курсовой работе рассматривается процесс создания дизассмеблера. В пояснительной записке содержится описание программы, списка команд, который способен распознавать и выполнять дизассмеблер, принцип создания и тестовые примеры.
Всего листов 17
рисунков 1
список литературы содержит 2
Введение
Несмотря на более чем полувековую историю вычислительной техники, формально годом рождения теории компиляторов можно считать 1957, когда появился первый компилятор языка Фортран, созданный Бэкусом и дающий достаточно эффективный объектный код. До этого времени создание компиляторов было весьма "творческим" процессом. Лишь появление теории формальных языков и строгих математических моделей позволило перейти от "творчества" к "науке". Именно благодаря этому стало возможным появление сотен новых языков программирования. Более того, формальная теория компиляторов дала новый стимул развитию математической лингвистики и методам искусственного интеллекта, связанных с естественными и искусственными языками.
Основу теории компиляторов составляет теория формальных языков – весьма сложный, насыщенный терминами, определениями, математическими моделями и прочими формализмами раздел математики. Именно "языковой" стороне теории компиляторов прежде всего уделяется внимание в этом пособии. Разумеется, и формирование объектного кода, и машинно-зависимая оптимизация, и компоновка, безусловно, важны. Однако все это – частности, зависящие прежде всего от конкретной архитектуры вычислительной машины, от конкретной операционной системы. Архитектура меняется год от года, основы же остаются неизменными (на то они и основы) уже не один десяток лет.
Конечно, построить компилятор или интерпретатор можно и без всякой теории. Возможно, он даже будет работать. Но все дело в том, что, во-первых, этот титанический труд будет малоэффективен, а во-вторых, в лучшем случае мы получим "одноразовый" продукт, не пригодный для дальнейшего развития.
Целью программы является обработка получаемых команд которые представлены в задании. Результатом работы программы является результат обработки команд. Если команды имеют недопустимый формат программа выводит сообщение об ошибке.
Разработка интерпретаторов
Интерпретатор - программа (иногда аппаратное средство), анализирующая команды или операторы программы и тут же выполняющая их.