Кодирование информации. Раздел 3. Общая теория конечных цифровых автоматов с памятью

Раздел 3. Общая теория конечных цифровых автоматов с памятью. Лекция 4. Основные понятия и определения.

В вычислительной технике в основном используется схемы двух классов: комбинационные схемы и цифровые автоматы. Отличительной особенностью комбинационных схем является наличие жесткой функциональной зависимости между выходным сигналом и входным:
y (t) = f (x (t)). Причем при отсутствии входных сигналов выходные сигналы также отсутствуют, поскольку такие схемы не имеют памяти. В отличии комбинационных схем схемы второго класса содержат в своем составе элементы памяти (запоминающие элементы). Эти схемы называются цифровыми автоматами (ЦА) или просто автоматами. В ЦА выходные сигналы в данный момент времени зависят не только от значения входных сигналов в тот же момент времени, но и от состояния схемы, которое, в свою очередь, определяется значениями входных сигналов, поступивших в предшествующие моменты времени. Введем основные понятия и определения.

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

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

Например: в алфавите X = (x1, x2), состоящем из двух букв, словами будут: x1, x2, x1x1, x1x2, x2x1,x2x2, x1x1x1 и т.д.

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

Математической моделью реального конечного автомата является абстрактный автомат, который имеет один входной канал и один выходной канал.

X(x1,…,xm) ---> A(a0,...,an) ---> Y(y1,…,yk)

Автомат функционирует в дискретные моменты времени, интервал, между которыми Т называется тактом. При этом в каждый дискретный момент времени на вход автомата поступает одна буква входного алфавита, автомат переходит из одного состояния в другое и выдается одна буква выходного алфавита. В зависимости от того, как задается длительность такта Т, различают автоматы синхронного действия (T =const) и асинхронного действия (T const). Мы будем рассматривать, в основном, синхронные автоматы, функционирующие в дискретные моменты времени, которые можно обозначить целыми неотрицательными натуральными числами, t =0,1,2,3,…., имеющими смысл номера такта.

Для задания конечного автомата S необходимо задавать совокупность из пяти объектов: S(A, X, Y, d, l), где A = { a 0, a 1, a 2,..., a n}– множество внутренних состояний автомата, X = { x 1, x 2,…, x m} – множество входных сигналов (входной алфавит), x i – буква входного алфавита, Y = {y1, y2,…, yk} – множество выходных сигналов (выходной алфавит),

d - функция переходов, определяющая состояние автомата a (t +1), в котором автомат будет находится в момент времени (t +1), в зависимости от состояния автомата a (t) и входного сигнала x (t) в момент времени t, то есть a (t +1) = d [ a (t), x (t)],

l - функция выходов, определяющая значение выходного сигнала y (t) в зависимости от состояния автомата a (t) и входного сигнала x (t) в момент времени t, т.е. y (t) = l [ a (t), x (t)].

Автомат работает следующим образом: в каждый момент времени t он находится в определенном состоянии a (t) из множества А возможных состояний. Причем в начальный момент времени t = 0 он всегда находится в состоянии a (t = 0) = a 0. В момент времени t автомат воспринимает входной сигнал x (t), выдает выходной сигналу y (t) = l [ a (t), x (t)] и переходит в следующее состояние a (t +1)= d [ a (t), x (t)]. Другими словами абстрактный автомат каждой паре символов a (t) и x (t) ставит в однозначное соответствие пару символов a (t +1) и y (t). Такие автоматы называют детерминированными. На преобразование информации в детерминированных автоматах наложены условия.

Условия преобразования информации в детерминированных автоматах:

1. Любое входное слово, длинною l букв, преобразуется в выходное слово той же длины.

2. Если каждый раз перед подачей входных сигналов автомат находится в одном и том же состоянии, то при совпадении в двух входных словах первых l 1 букв, в выходных словах первые l 1 букв также совпадут.

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

Применяемые на практике автоматы принято разделять на два класса - это автоматы Мили и автоматы Мура, названные так по имени американских ученых, которые впервые начали их изучать. Функционирование автоматов строго подчиняется определённым законам (законы функционирования автоматов). Законы функционирования автоматов описываются системами уравнений:

Автомат Мили:

  a(t + 1) = d[a(t),x(t)]
  y(t) = l[a(t),x(t)]
  t = 1,2,3…

Автомат Мура:

  a(t + 1) = d[a(t),x(t)]
  y(t) = l[a(t)]
  t = 1,2,3…

Отличительной особенностью автоматов Мили является то, что их выходные сигналы зависят как от состояния автомата, так и от значения входного сигнала. В автоматах Мура выходные сигналы y (t) в каждый дискретный момент времени t однозначно определяются состоянием автомата в тот же момент времени и не зависят от значения входного сигнала.

Способы задания автоматов

Чтобы задать конечный автомат S, необходимо описать все элементы множества S = { A, X, Y, d, l }. То есть необходимо описать входной, выходной алфавиты и алфавит состояний, а также функции переходов d и выходов l. При этом среди множества A = { a 0, a 1,…, a n} необходимо выделить начальное состояния a 0, в котором автомат находится в момент времени t = 0. Существует несколько способов задания работы автомата, но наиболее часто используются табличный и графический.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: