Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
osnov.doc
Скачиваний:
9
Добавлен:
08.11.2019
Размер:
1.37 Mб
Скачать

1.4. Общие понятия о цифровом автомате и алгоритме

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

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

Введем другое определение понятия цифрового автомата.

Цифровой автомат это устройство, характеризующееся набором некоторых внутренних состояний A = {a1(t), a2(t), ..., an(t)}= в которые оно попадает под воздействием входных сигналов и команд программы решения задачи.

Пусть имеется автомат с одним входом и одним выходом:

z(t) (t)

Рис.1.3. Цифровой автомат

Тогда математической модель. цифрового автомата является некоторый абстрактный автомат, заданный следующим образом: в начальный момент времени t = t0 автомат находится в состоянии a(t0) = a1 и остается в нем до момента t = t1, когда появляется входной сигнал z(t1). Под воздействием сигнала z(t1) автомат переходит из состояния a1 в состояние a(t1) = a2. При этом возникает выходной сигнал (t1) = 1, определяемый как функция

(t1) = [a(t1), z(t1)]. Таким образом можно принять, что при подаче произвольного сигнала z(t) = zf автомат переходит из состояния a(t) в состояние a(t+1), которое есть функция a(t+1) = [a(t), z(t)], и в результате вырабатывает выходной сигнал (t).

Выходные сигналы могут вырабатываться при каждом переходе автомата из состояния a(t) в состояние a(t+1) или только при определенных сочетаниях входного сигнала и состояний автомата.

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

Таким образом абстрактный автомат можно описать с помощью следующих параметров:

a1 - начальное состояние автомата;

A = {a1, a2,..., am } - множество внутренних состояний;

Z = {z1, z2,..., zf } - множество входных сигналов;

W = {1, 2,..., h } - множество выходных сигналов;

= {1, 2, ..., n } - совокупность функций перехода из одного состояния в другое;

= {1, 2,..., p } - совокупность функций выходов.

Следовательно, абстрактный автомат реализует некоторе отображение множества слов входного алфавита Z в множество слов выходного алфавита W.

Цифровые автоматы могут быть объединены между собой для фор-мирования более сложного устройства обработки цифровой информации. Существует несколько способов соединения автоматов. Например, параллельное соединение автоматов ЦА1 и ЦА2 (рис.1.4 а), последовательное соединение (рис.1.4. б) и соединение с обратной связь. (рис.1.4. в).

Y1

X Y = (Y1, Y2)

Y2

а) X Y1 Y

X X1 Y1 б)

Y2

в)

Рис. 1.4.

В первом случае устройство объединяет выходы двух автоматов и тем самым получается новый атомат, у которого Y = (Y1, Y2).

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

| X Y2 X1, т.е. X1 = (X, Y2). Очевидно, что во всех этих случаях в итоге формируется некий цифровой автомат с новыми характеристиками.

Совокупность правил перехода автомата из одного состояния в другое в зависимости от входной информации и внутренних состояний автомата называется алгоритмом преобразования (переработки) информации. Вообще алгоритмом называется конечная совокупность точно сформулированных правил решения какойто задачи.

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]