Разработка итерпретатора языка программирования паскаль



Скачать 282.49 Kb.
Дата20.11.2016
Размер282.49 Kb.
Просмотров191
Скачиваний0
ТипРеферат


РАЗРАБОТКА ИТЕРПРЕТАТОРА ЯЗЫКА ПРОГРАММИРОВАНИЯ ПАСКАЛЬ

Автор:



Ахмед УМБАТОВ,

ученик 10-го класса

ТЛ «Василе Лупу»,

мун. Кишинэу, Молдова




СОДЕРЖАНИЕ

  1. Введение. Краткая предыстория проблемы




  1. Основные цели и актуальность работы




  1. Интерфейс программы




  1. Преимущества перед Turbo Pascal




  1. Вывод




  1. Список литературы




  1. Введение

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

Со времени создания первых программируемых машин человечество придумало уже более восьми с половиной тысяч языков программирования. Каждый год их число пополняется новыми.

Для каждого языка программирования разрабатывается специальная программа, позволяющая переводить текст программы на соответствующем языке в исполнительную форму. Эта программа относится к классу специальных системных программ, называемых инструментальными или трансляторами.

Трансляторы подразделяются на два вида: компиляторы и интерпретаторы. Компилятор преобразует исходный текст программы в исполняемую форму и сохраняет его на внешнем запоминающем устройстве в виде исполняемого модуля (файл с расширением *.EXE для Windows). После трансляции исполняемый файл можно отправлять на исполнение самостоятельно. Интерпретатор переводит исходный текст программы в команды микропроцессора и сразу отправляет его на выполнение, не сохраняя его на диске. Для разработки больших программ и программных комплексов целесообразно использовать компиляторы, так как они позволяют широкому кругу пользователей выполнять прикладные задачи без специальных знаний по трансляции программы.

Каждый язык программирования имеет свой синтаксис, который определяет правила записи и состав допустимых конструкций языка. Смысл же каждой конструкции языка образует его семантику. Семантика обеспечивает пользователя языка смысловыми правилами применения и интерпретации конструкций языка.

Запись алгоритма в терминах алгоритмического языка называется исходным текстом программы. При изучении языка программирования необходимо изучить, какие величины допускается использовать в данном языке, как они должны быть представлены в тексте программы, какие операции над этими величинами можно задавать, как эти операции записываются в соответствии с правилами языка, каковы правила объединения отдельных конструкций вычислительного процесса. При трансляции программы проверяется синтаксис программы и в случае отклонения от правил, трансляция прерывается и появляется сообщение об ошибке. При правильно написанной программе, но не отвечающей алгоритму использования команд языка, появляются логические ошибки. Если для обнаружения синтаксических ошибок достаточно произвести трансляцию программы, то для выявления логических используют специальные программы называемые отладчиками. Отладчики предоставляют программисту набор средств, позволяющих контролировать ход выполнения программы, наблюдать за изменением переменных, просматривать содержимое регистров микропроцессора, областей памяти и многие другие полезные при отладке функции. Процесс отладки и тестирования программ занимает время порой соизмеримое со временем разработки алгоритма и программы.

Появление Turbo Pascal в начале 80-х годов произвело переворот в программировании. Turbo Pascal объединил язык программирования с интегрированной средой разработки и отладки программ. Он, являясь продолжением языка ALGOL, положил основу таким языкам как Ada и Modul.

Первая версия Turbo Pascal появилась в 1983 году и использовалась недолго. Через год вышла в свет вторая версия, получившая широкое распространение. В 1985 году вышла третья версия языка, удобная в эксплуатации и более быстродействующая. В четвертой версии появился встроенный компилятор, а в пятой встроенный отладчик. Разработанная в 1989 году версия 5.5, позволила перейти к поддержке объектно-ориентированной технологии программирования.

Turbo Pascal 6.0 был расширен поддержкой многодокументного интерфейса, обладал встроенным ассемблером, что позволяло эффективно выполнять процедуры работы с устройствами компьютера на низком уровне.

В 1992 году фирма Borland выпускает два пакета Borland Pascal 7.0 и Turbo Pascal 7.0. Эти пакеты позволяют не только использовать в разработке программ объектно-ориентированную методологию, но и разрабатывать приложения с поддержкой защищённого режима работы микропроцессора, а также создавать приложения для работы под популярную операционную среду "Windows".

Дальнейшее своё продолжение Pascal получил в визуальной среде, поддерживающей технологию быстрой разработки приложений RAD (Rapid Application Development) Delphi. Delphi одно из наиболее распространённых в настоящий момент средств разработки программных продуктов, объединяющее средства визуального проектирования и объектный Pascal. Поскольку Pascal предназначен, в первую очередь, для изучения программирования как дисциплины, то многие профессиональные программисты начинали свой путь именно с изучения программирования на языке Pascal.




  1. Основные цели и актуальность работы

Основной целью представленной работы является разработка программного продукта (интерпретатор языка программирования стандарта Pascal, далее ПО) с простым интерфейсом и высоким уровнем доступности для школьников.

Учитывая присутствие на рынке программных продуктов других интерпретаторов для языка стандарта Pascal достижение указанной цели должно сочетаться с улучшением качественных характеристик разрабатываемого программного продукта, а именно:


  • увеличением производительности ПО за счёт равномерного распределения оперативной памяти, используемой под программу;

  • внедрением многоязыковой поддержки интерфейса (многоязыковое меню программы, сообщения синтаксического и аналитического анализатора и т.д.) для расширения круга пользователей и упрощения изучения языка программирования Pascal для школьников, слабо владеющих английским языком;

  • применением функции тестирования, позволяющей производить оценку разработанных учащимися программ, немедленно, после завершения их разработки;

Достижение перечисленных выше целей и решение задач по качественному улучшению ПО позволит, в конечном итоге, достичь главную цель всей представленной работы – повышение качества изучения языка программирования стандарта Pascal.

Актуальность работы исходит из требований, предъявляемых в



  1. современных условиях к изучению языка программирования стандарта Pascal. Развитие высоких технологий и компьютеризации учебных заведений предопределяют необходимость в развитии прикладных программ, позволяющих глубже, нагляднее и эффективнее изучать преподаваемые науки и предметы, в данном случае – программирование на языке стандарта Pascal, как раздел информатики.


Интерфейс программы.

После увеличения функциональности программы, моей второй задачей являлось повышение её удобства её использования за счёт упрощения программного интерфейса.



копия копия 1.jpg

Главное окно программы.
Обозначения:


  1. Главное меню

  2. Панель инструментов

  3. Область редактирования исходного текста программы

  4. Древо исходного кода

  5. Область вывода сообщения компилятора


Главное меню программы.
Главное меню моей программы состоит из следующих пунктов:

  1. Файл

  2. Редактирование

  3. Вид

  4. Выполнение

  5. Тестирование

  6. Помощь

В меню «ФАЙЛ» расположены пункты: Новый (для создания новой программы), Открыть (для открытия уже созданных программ), Сохранить (для сохранения кода программы в указанную вами при первом сохранении директорию), Сохранить (для сохранения кода программы в заданную директорию), Полный экран (для работы с кодом программы в полноэкранном режиме), Выход (для безопасного завершения работы программы, с оповещением о несохраненном файле.).

В этом пункте меню расположены базовые функцию программы для работы с исходным текстом. Но также была добавлена функцию полноэкранного редактирования исходного текста, для повышения удобства редактирования пользователю.
2.jpg

В меню «РЕДАКТИРОВАНИЕ» расположены инструменты необходимые для полноценной работы программы с текстом. Такие как: Отменить, Вырезать, Копировать, Вставить, Выделить всё.


3.jpg

Меню «ВИД» было создано для персонализации программы под личный вкус каждого пользователя. Пользователь может показать или скрыть такие элементы интерфейса, как: Панель инструментов, древо исходного кода, область вывода сообщений компилятора.



4.jpg

Самое главное меню – это меню «ВЫПОЛНЕНИЕ», т.к. именно через него можно начать исполнение нашей программы.



5.jpg

Через меню «тестировать» учитель может проверить правильность и оптимизированность данной программы.


Панель инструментов

12.jpg
Панель инструментов была создана для вывода самых необходимых функций программы. Таких, как: создание новой программы, открытие программы, быстрое сохранение, редактирование текста, выполнение программы и справка.
Область редактирования исходного текста программы
Область редактирования исходного текста программы представлена в виде белого параллелограмма. Что очень удобно для начинающего пользователя привыкшего к стандартными областям редактирование текста, которые он видел в Блокноте или MS Word. Также одним из преимуществ является современная подсветка синтаксиса языка Паскаль, созданная по стандартам ISO, выдвинутым ещё корпорацией Borland (разработчиком Delphi, сейчас права на Delphi принадлежат компании CodeGear). Также область эта область редактирования имеет всплывающее меню.


Древо исходного кода15.jpg14.jpg

16.jpg

Древо исходного кода было разработано для наглядности, так как позволяет наглядно увидеть объявленные переменные, константы, процедуры и функции. Также древо исходного кода повышает скорость разработки программы.



17.jpg


Область вывода сообщения компилятора
Область вывода сообщений компилятора – это обязательная составляющая любого компилятора или интерпретатора. Эта область выводит сообщения об ошибках в коде программа, об ошибках во время исполнения, а также даёт полезные советы и личные сообщения автора.

18.jpg


19.jpg

Пример личного сообщения автора. О том, что мой интерпретатор не использует устаревший тип Real, но зато использует новый тип Double.




  1. Преимущества перед Turbo Pascal

Основными преимуществами разработанного интерпретатора перед Turbo Pascal, являются:




  • Удобство и простота в изучении учениками

  • Наличие многоязыковой поддержки

  • Возможность работы в ОС Windows, в отличии от Turbo Pascal, работающего только через MS DOS

  • Возможность работы с общим буфером обмена, что весьма удобно при копировании текстов из разных приложений;

  • Использование современных типов данных, в отличии от Turbo Pascal, использующего типы данных, известные до 1993 года, когда была разработана последняя его версия;

  • Наличие встроенной функции тестирования программы, позволяющей в режиме реального времени оценивать составленную программу;

  • Высокая производительность программы;

  • Ориентированность программы на потребность современной системы преподавания программирования;

  • Упрощенная процедура исполнения программного кода, не требующая компиляции, то есть создания исполняемых файлов, а позволяющая напрямую работать с пользователем;

  • Программа не требует инсталляции и очень мобильна.




  1. Вывод.

В настоящее время в информатике известен широкий спектр компиляторов и интерпретаторов, разработанных такими корпорациями, как Borland, Microsoft, Linux Foundation и Apple. При общей схожести преимуществ, они имеют и общий недостаток, а именно отсутствие многоязыковой поддержки.

Предлагаемый интерпретатор, решая общие задачи всех известных компиляторов и интерпретаторов, имеет существенную новизну и преимущество - многоязыковую поддержку интерфейса и сообщений компилятора. Кроме этого, за счет динамического распределения оперативной памяти повышена производительность компилятора, создан «дружественный» интерфейс. Для упрощения процедуры проверки правильности составленной программы создан режим тестирования, позволяющий автоматически оценить составленную программу. Система оценки может быть задана преподавателем заранее, с использованием специально предусмотренной для этой цели функцией. Разработанному интерпретатору присуща высокая наглядность и доступность в освоении.

Интерпретатор ориентирован на обучение основам программирования учащихся 9 – 12 классов, а также для решения сложных алгоритмических задач. Учащийся, изучающий программирование на языке Паскаль, уже в стадии набора исходного текста программы, может наглядно увидеть допущенные ошибки, выделенные цветной волнистой линией, и прочесть на доступном ему языке (русский, румынский, или иной язык, добавленный в ресурсы программы) о типе ошибке, описании ошибки и месте ее нахождении, при допущении синтаксических и семантических ошибок.

Инновация предлагаемого интерпретатора заключается также в его портативности и мобильности. Он не требует инсталляции и дополнительной регистрации в системе.

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




  1. Список литературы




  1. Джек Креншоу «Давайте создадим компилятор!», 1995.

  2. Волкова И. А., Вылиток А. А., Руденко Т. В. «Формальные грамматики и языки. Элементы теории трансляции» – М.: Изд-во МГУ, 1999.

  3. Макгрегор Дж., Сайкс Д. «Тестирование объектно-ориентированного программного обеспечения. Практическое пособие» – М.: „DiaSoft“, 2002.

  4. Тарануха Н. А., Гринкруг Л. С. «Обучение программированию: язык Pascal» - Солон-пресс, 2009

  5. Анатол Гремальски, Юрие Мокану, Ион Спиней «Информатика. Учебник для 9 класса», Ştiinţa, 2009




Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал