Операционный автомат

Программная инженерия (бакалавриат)

Фундаментальная информатика и информационные технологии (бакалавриат)

Литература: [1, стр. 38, 60 – 62, 81 – 89], [2, стр. 714 – 716] , [3, стр. 606]

Исходными данными для разработки структуры операционного автомата являются:

■ описание входных и выходных слов, т. е. множеств и ;

■ список подмножества операций из множества , которые должны выполняться над словами.

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

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

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

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

Таким образом, процесс разработки операционного автомата можно представить состоящим из пяти этапов:

1) определение форматов входных и выходных данных (слов);

2) разработка блок-схем алгоритмов выполняемых операций;

3) разработка структуры операционного автомата, т. е. определение элементов и организация связей между ними;

4) определение множества микроопераций, выполняемых в операционном автомате;

5) определение множества логических условий, формируемых в операционном автомате.