РАЗРАБОТКА МОДЕЛИ ЦИФРОВОГО АВТОМАТА, УПРАВЛЯЮЩЕГО РАБОТОЙ КАЛЬКУЛЯТОРА
Львова Елена Юрьевна, Приамурский государственный университет им.Шолом-Алейхема, г. Биробиджан
E-mail: [email protected]
Аннотация. В данной статье представлена реализация компьютерной модели цифрового автомата, управляющего работой калькулятора. Разработанные модели в средах Electronic Workbench, Delphi могут применяться для обучения студентов теории автоматов и switch-технологии.
Ключевые слова: цифровой автомат, функциональная схема автомата, компьютерная модель.
В настоящий момент существует большое количество приборов, управление которых производится на основе теории автоматов. Разработка управляющих устройств требует значительных усилий и затрат, которые можно минимизировать применением автоматной теории, позволяющая уменьшить количество ошибок и упростить процесс отладки. Использование компьютерных средств моделирования также снижает время проектирования. Поэтому разработка компьютерных моделей цифровых автоматов актуально.
Основные положения теории автоматов изложены в работах Дж. Хопкрофт, Р. Мотвани, Дж. Ульман, В.Г. Лазарев, Е.И. Пийль [1, 2]. Применение теории автоматов в программировании положил А. А. Шалыто [3]. Ю.Ю. Янкин, А.А. Шалыто, Н.И.Поликарпова показали использование теории автоматов (switch-технологию в программировании) в различных областях [3, 4, 5]. В работах Р.И. Баженова, М.А. Афанасьевой, Л.С. Гринкруга представлены исследования по разработке мастеров в информационных системах, адаптации к технологиям интеллектуального анализа switch-технологии [6, 7, 8, 9]. Зарубежные ученые также применяют теорию автоматов в компьютерных технологиях [10, 11].
Для иллюстрации применения теории автоматов моделировался цифровой автомат по управлению калькулятором.
Изучив логику работы калькулятора, был составлен граф состояний автомата (рис. 1) [12].
Опишем внутренние состояния цифрового автомата:
- Аі - готов;
- А2 - нажата цифра;
- А3 - нажата команда;
- А - нажато равно;
- А5 - сброс.
Опишем входные сигналы:
а) 21 - цифра;
б) 72 - точка;
в) 73 - команда;
г) 74 - равно.
Опишем выходные сигналы:
- '1 - сохранение математической операции;
- '2 - формирование числа;
- '3 - вывод точки;
- '4 - выполнение математической операции.
SCIENCE TIME
Кодирование входных, выходных сигналов и внутренних состояний представлено в табл.1.
Таблица 1
Кодирование входных, выходных сигналов и внутренних состояний цифрового автомата
*1 *2 Ух У 2 Q1 Q2 Q3
z1 0 0 W1 0 0 a1 0 0 0
Z 2 0 1 W2 0 1 a2 0 0 1
Z3 1 0 W3 1 0 a3 0 1 0
Z4 1 1 W4 1 1 a4 0 1 1
a5 1 0 0
Составим совмещенную таблицу для данного синтезируемого цифрового автомата (табл. 2).
Таблица 2
Совмещенная таблица для автомата
a1 a2 a3 a4 a5
z1 a2> - a1 / - a2 / - a5/ - a2 / -
Z2 * CT * cT * * CT * cT
Z3 a3 / w13 w2 a3 / w13 w2 a5 / - a1 / w2 a1 / -
Z4 a4 / w4 a4 / w2 a4 / w4 * «л a1 / -
После проведенных вычислений [13] получим набор функций цифрового автомата с элементами памяти на Э-триггерах.
SCIENCE TIME
У = X1Q1 + Q3 + X1X2 5 У2 _ X1X2Q1 ^ X1Q1Q2Q3 ,
D1 — Xl X2QlQ2Q3 + Q1Q2Q3,
D2 ~ X1X2 ^ X1X2Q1Q2 ^ X1X2Q1Q2Q3 , D3 _ Q1Q3 ^ X1X2Q1Q2Q3 ^ X1X2Q1Q2 •
Структура цифрового автомата может быть представлена в программной системе Electronics Workbench (рис. 2).
Рис. 2 Функциональная схема автомата в Electronics Workbench
Для компьютерного моделирования работы цифрового автомата с помощью системы Ве1рЫбыла разработана процедура avtomat, реализующая граф состояний. Приведем фрагмент ее кода.
procedure TForm1.avtomat(sost,sInp: integer);
begin
n:=sost;
z:=sInp;
case n of
SCIENCE TIME
1:
case z of 1:
begin
a:=1;
w:=1;
aview;
end;
end;
2:
case z of 1:
begin
a:=2;
w:=2;
aview;
end;
2,3:
begin
w:=3;
aview;
end;
4,5:
begin
w:=4;
aview;
end;
end;
end;
end;
Представим несколько иллюстративных скриншотов разработанной компьютерной модели (рис. 3).
SCIENCE TIME
• Рис. 3 Модель калькулятора
В ходе выполнения исследования были разработаны компьютерные модели цифрового автомата управляющего работой калькулятора в средахElectronic Workbench и Delphi. Полученные решения позволяют применять конечный продукт для решения вычислений и пользовать для иллюстрации применения switch-технологии в обучении студентов.
Литература:
1. Хопкрофт Дж., Мотвани Р., Ульман Дж. Введение в теорию автоматов, языков и вычислений. - М.: Вильямс, 2002. - 528 с.
2. Лазарев В. Г., Пийль Е. И. Синтез управляющих автоматов. - М.: Энергоатомиздат, 1989. - 328 с.
3. Поликарпова Н. И., Шалыто А. А. Автоматное программирование. -СПб.: Питер, 2009. - 176 с.
4. Янкин Ю. Ю., Шалыто А. А. Автоматное программирование плис в задачах управления электроприводом // Информационно-управляющие системы. - 2011.
- № 1. - С. 50-56.
5. Татарчевский В. Применение Б’^сИ-технологии при разработке программного обеспечения для микроконтроллеров // Компоненты и технологии. - 2006. - N° 65. - С. 118-121.
6. Баженов Р. И., Афанасьева М. А. Разработка программной модели контроля дверей холодильника на основе теории автоматов // Журнал научных публикаций
SCIENCE TIME
аспирантов и докторантов. - 2014. - №4(94). - С. 306-308.
7. Баженов Р. И. Интеллектуальные информационные технологии. - Биробиджан: ПГУ им. Шолом-Алейхема, 2011. - 176 с.
8. Баженов Р. И., Гринкруг Л. С. Информационная система по расчету и распределению нагрузки профессорско-преподавательского состава ФГБОУ ВПО «Приамурский государственный университет им. Шолом-Алейхема» // Информатизацияисвязь. - 2012. - №5. - С. 75-78.
9. Баженов Р. И., Гринкруг Л. С. Информационная система Абитуриент-Деканат ФГБОУ ВПО «Приамурский государственный университет им. Шолом-Алейхема» // Информатизация и связь. - 2013. - № 2. - С. 97-99.
10. Reddy U. S. Automata-Theoretic Semantics of Idealized Algol with Passive Expressions // Electronic Notes in Theoretical Computer Science. - 2013. - 298 (4). -P. 325-348.
11. Torkestani J. A., Meybodi M. R. A cellular learning automata-based algorithm for solving the vertex coloring problem // Expert Systems with Applications.- 2011. - 38 (8). - P. 9237-9247.
12. Кардашев Г.А. Цифровая электроника на персональном компьютере. ElectronicsWorkbench и Micro-Cap. - М.: Горячая Линия-Телеком, 2003. - 311 с.
13. Баженов Р. И. Методические рекомендации для выполнения курсовой работы по дисциплине «Теория автоматов». - Биробиджан: Изд-во ДВГСГА, 2008. - 20 с.