48240 (Программа–конструктор для построения МП–транслятора по его параметрам с последующей проверкой задаваемых пользователем цепочек)

2016-07-30СтудИзба

Описание файла

Документ из архива "Программа–конструктор для построения МП–транслятора по его параметрам с последующей проверкой задаваемых пользователем цепочек", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "48240"

Текст из документа "48240"

СОДЕРЖАНИЕ

Задание

Реферат

Введение

1 Теоретические и практические основы разрабатываемой темы

1.1 Теория конечных автоматов

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

2 Разработка программного продукта

2.1 Современные требования к программным продуктам

2.2 Предполагаемая структура разрабатываемого ПП

2.3 Обоснование выбора средств реализации

2.4 Функциональная схема ( блок-схема )

2.5 Алгоритм реализации основной функции ПП

2.6 Иерархия экранных форм

2.7 Систему контроля неквалифицированных действий пользователя

3 Руководство пользователя, инструкция по инсталляции

3.1 Требования к аппаратным средствам

Выводы

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

Приложение А

РЕФЕРАТ

Курсовая работа по дисциплине «Основы дискретной математики» на тему: « Программа – конструктор для построения МП – транслятора по его параметрам с последующей проверкой задаваемых пользователем цепочек»

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

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

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

Ключевые слова:

дискретная математика, МП-транслятор, управляющая таблица, входная цепочка, выходная цепочка.


Введение

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

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

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

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

Реферат

Дискретная математика– раздел математики, занимающийся изучением свойств объектов конечного характера.

Дискретная математика включает в себя такие разделы как множества, алгебра высказываний, теория конечных автоматов, теория графов.

В этой курсовой работе будет предпринята попытка раскрыть как можно шире понятие автоматов-трансляторов с магазинной памятью.

Delphi является одним из наиболее быстрых средств для реализации поставленной задачи (написание кода программы и визуальное создание вида программы занимают очень короткий промежуток времени по сравнению с другими языками).

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

При разработке программного продукта использовалась интегрированная среда Delphi 6.

1 Теоретические и практические основы разрабатываемой темы

    1. Теория конечных автоматов

Конечный автомат(в дальнейшем КА) - абстрактное вычислительное устройство с фиксированным и конечным объемом памяти, которое на входе читает цепочки(последовательности символов некоторого алфавита), а на выходе сообщает об их принадлежности к некоторому множеству, для распознания которого он построен.

По сути КА работает как фильтр, который пропускает "правильные" цепочки. Другая трактовка КА - компактный алгоритм распознания регулярных, в том числе и бесконечных множеств, который строит программист перед началом кодирования (реализацией алгоритма на конкретном языке).

Далеко не для всех регулярных множеств можно построить

КА-распознаватель, так как КА не имеет возможности сосчитать и запомнить количество символов обрабатываемой цепочки. Для этой цели используется специальное устройство - магазин, в который можно помещать символы или удалять их, запоминая или сравнивая количество символов входной цепочки. Такой автомат называется автоматом распознавателем с магазинной памятью (сокращенно – МП-распознавателем).

Но в ряде случаев при обработке регулярного множества необходимо его преобразование в другое множество. Такие действия может выполнять МП-транслятор, на выходе которого будет формироваться выходная цепочка.

МП-транслятор задается :

1.Конечным множеством входных символов (включая символ конца цепочки "¶").

2.Конечным множеством выходных символов.

3.Конечным множеством магазинных символов (включая маркер дна магазина - '¤').

4.Конечным множеством состояний.

5.Упpавляющей таблицей, котоpая каждой комбинации трех параметров: входной символ, магазинный символ(верхний символ магазина), состояние - ставит в соответствие четыре параметра: действие с магазином, входным символом, состоянием и выходным символом.

5.Hачальной конфигурацией (начальное состояние и начальное содеpжимое магазина).

6.Множеством допускающих конфигураций (комбинаций - состояние МП-транслятора и верхний символ магазина в момент, когда приходит символ "конец цепочки").

Допускаемые операции над входом:

1.Держать входной символ (Д).

2.Перейти к очередному символу (П).

Примечание: запрещено запрашивать входной символ после прихода символа "¶"("конец цепочки").

Допускаемые операции над магазином

1.Втолкнуть в магазин магазинный символ, к примеру А (Вт.А).

2.Вытолкнуть из магазина верхний символ, к примеру А (Выт.А).

3.Оставить магазин без изменений (О).

Ряд ячеек управляющей таблицы может без деления на поля заполняться символом Е (состояние ошибки). Если МП-транслятор попал в такое состояние, то обработка цепочки прекращается и такая цепочка отвергается.

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

Рассмотрим строение ячейки в таблице переходов МП-транслятора.

Действия с магазином


Действия с входным символом


Состояние автомата



Выдать на выход символ


Рис. 1 – вид ячейки МП-транслятора

Построение МП-транслятора для распознания заданного множества цепочек - процесс творческий и неоднозначный. Теоретически для распознания одного и того же множества цепочек можно построить бесконечное множество КА. Описанный выше принцип распознания применим далеко не ко всякому регулярному множеству.

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

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

  1. Разработка программного продукта

2.1 Современные требования к программным продуктам

К современным программным продуктам (далее ПП) предъявляется ряд требований. Современные ПП должны обладать дружественным интерфейсом, позволяющим пользователю просто работать с приложением, а не теряться в догадках о назначении той или иной кнопки или другого элемента управления. В идеале приложение должно очень корректно и последовательно “проводить” пользователя от этапа ввода данных до получения конкретного результата. Приложение должно обладать развитой системой поддержки пользователя, а именно справочной подсистемой, грамотно изложенным руководством пользователя и так далее. Для обеспечения этих и других требований используется стандартизованный интуитивно понятный интерфейс, принятый во многих графических операционных системах, что позволяет пользователю начинать работу с приложением не с изучения назначений его элементов управления, а непосредственно с изучения предметной области, в которой функционирует приложение, с тем, чтобы сразу после этого приступить к работе с приложением.

2.2 Предполагаемая структура разрабатываемого ПП


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

Выбранная среда разработки основана на объектно-ориентированном языке (Object Pascal), что предполагает проектирование ПП в рамках объектно-ориентированной технологии.

В программе реализованы следующие объекты:

TMyStack – инкапсулирует свойства и методы для организации и функционирования стека.

TMPrasp – инкапсулирует свойства и методы для организации и функционирования МП-транслятора.

Остальные объекты, реализующие функциональность программы, созданы (с применением автоматизации) с помощью среды разработчика (IDE Delphi).

Модули :

DMKurs – главный модуль организующий работу ПП (отрисовку, загрузку, сохранение, обработка введенных данных)

Mpunit – создание объекта МП-транслятора и его функционирование.

AddUn – добавление различных элементов МП-транслятора

EditUn – редактирование ячейки.

Остальные объекты, реализующие функциональность программы, созданы (с применением автоматизации) с помощью среды разработчика (IDE Delphi). Структура ПП, реализованного согласно выданного в рамках курсовой представлена на рисунке 2.

Модуль Dmkurs



Модуль EditUn



Объект TMPrasp




Р

Объект TMyStack


Модуль AddUn



ис.2 – Структура программного продукта

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5076
Авторов
на СтудИзбе
455
Средний доход
с одного платного файла
Обучение Подробнее