Анализ алгоритма деления чисел, представленного на рис. 1.2, позволяет разработать структуру операционного автомата. Учитывая действия, которые требуется выполнить для реализации алгоритма, включим в состав операционного автомата следующие элементы:
■ два 16-разрядных регистра Рг A и Рг B для хранения исходных операндов и , а также промежуточных результатов, причем регистр Рг A должен обеспечивать возможность сдвига своего содержимого влево;
■ 16-разрядный регистр Рг C для хранения результата арифметической операции сложения или вычитания; в процессе выполнения алгоритма в этом регистре будет формироваться остаток , а на последнем этапе в него будет помещен результат частное ;
■ 16-разрядный регистр Рг D с возможность сдвига своего содержимого влево для хранения частного в процессе его формирования;
■ 16-разрядный параллельный двоичный сумматор Сум/Выч для выполнения операций сложения и вычитания двоичных чисел;
■ 4-разрядный счетчик Сч n по модулю 16 для выполнения обратного счета цифр частного ;
■ триггер переполнения Тг O для хранения признака переполнения разрядной сетки;
■ триггер знака Тг s для временного хранения знака частного;
■ схема сравнения на предмет равенства знаковых битов операндов и ;
■ дешифратор DC "0" нулевой комбинации в битах C[1] – C[15], формирующий признак нулевого результата.
Связи между перечисленными выше элементами, а также управляющие ими микрооперации показаны на рис. 1.3, а в табл. 1.1 приведен полный список микроопераций и логических условий. Очевидно, что любые действия, обозначенные в операторных блоках блок-схемы алгоритма, представленной на рис. 1.2, могут быть реализованы в структуре разработанного операционного автомата (см. рис. 1.3).
Теперь определим, какая последовательность микроопераций должна быть реализована в разработанной структуре, чтобы выполнилась операция деления в соответствии с алгоритмом, изображенным на рис. 1.2. Простейшим решением является сохранение схемы алгоритма и замена содержимого операторных блоков соответствующими микрооперациями, а содержимое условных вершин – соответствующими логическими условиями.
Таблица 1.1