Está en la página 1de 16

MQUINAS Y AUTMATAS DE

ESTADO FINITO
PROPSITO
El Estudiante:

Analiza el comportamiento lgico de las mquinas


de estado finito y sus aplicaciones.
Analiza el comportamiento lgico de los autmatas
de estado finito y sus aplicaciones.
PROPSITO

En los circuitos combinatorios las salidas depende slo de la


entrada. Estos circuitos carecen de memoria.
En este tema se comenzar a estudiar los circuitos en los que la
salida depende no slo de la entrada, sino tambin del estado del
sistema en el momento en que se introduce la entrada.
El estado del sistema est determinado por el proceso anterior.
En este sentido, estos circuitos tienen memoria; se conocen como
circuitos secuenciales y su importancia es evidente en el diseo de
computadoras.
MQUINAS DE ESTADO FINITO

Circuitos secuenciales y mquinas de estado finito


Las operaciones dentro de una computadora digital se llevan a cabo
en intervalos discretos.
La salida depende del estado del sistema al igual que de la entrada.
Se supondr que el estado del sistema cambia slo en el tiempo t = 0,
1, . . . . Una manera sencilla de introducir la secuenciacin en los
circuitos es introducir un retraso unitario de tiempo.

Un retraso unitario de tiempo acepta como entrada un bit xt en el tiempo t y


produce xt1, el bit recibido como entrada en el tiempo t 1. El retraso
unitario de tiempo se dibuja como se muestra en la figura
Una mquina de estado finito es un modelo abstracto de una mquina con una
memoria interna primitiva.
Una mquina de estado finito M consiste en
a) Un conjunto finito I de smbolos de entrada.
b) Un conjunto finito O de smbolos de salida.
c) Un conjunto finito S de estados.
d) Una funcin f del siguiente estado de S I en S.
e) Una funcin g de salida de S I en S.
f) Un estado inicial S.

Se escribe M = (I, O, S, f, g, ).
Sean I = {a, b}, O = {0, 1}, y S = {0 , 1}. Defina un par de funciones
f : S I S y S I O por las reglas dadas en la tabla siguiente:
f g
I
a b a b
S
0 0 1 0 1
1 1 1 1 0

Entonces M = (I, O, S, f, g, 0) es una mquina de estado finito.


La tabla se interpreta como sigue:
f (0, a) = 0 g(0, a) = 0,
f (0, b) = 1 g(0, b) = 1,
f (1, a) = 1 g(1, a) = 1,
f (1, b) = 1 g(1, b) = 0.
Las funciones del siguiente estado y de salida tambin se pueden definir mediante
un diagrama de transicin. Antes de dar una definicin formal de diagrama de
transicin, se ilustrar cmo se construye uno.

El estado inicial se indica con una flecha.


Si estamos en el estado e introducimos i produce una salida o y nos mueve al
estado 1, se dibuja una arista dirigida del vrtice al vrtice 1 y se etiqueta i/o.
Si estamos en el estado 0 e introducimos a, por la tabla anterior se dice que
producimos 0 y permanecemos en el estado 0. Entonces dibujamos un lazo
dirigido en el vrtice 0 y se etiqueta a/0. Por otro lado, si estamos en el estado 0
y se introduce b, producimos 1 y nos movemos al estado 1. Entonces, dibujamos
una arista dirigida de 0 a 1 y se etiqueta b/1.
Encuentre la cadena de salida correspondiente a la cadena de entrada
aababba
para la mquina de estado finito del ejemplo anterior.

Al inicio estamos en el estado 0. El primer smbolo de entrada es a. Localizamos


la arista que sale de 0 en el diagrama de transicin de M (figura) etiquetado a/x,
que dice que si entra a, sale x. En este caso, 0 es la salida.
La arista seala el siguiente estado, 0. Despus, a es de nuevo la entrada.
Como antes, se produce 0 y nos quedamos en el estado 0. Luego, la entrada es
b. En este caso, producimos 1 y cambiamos al estado 1. Continuando de esta
manera, se encuentra que la cadena de salida es: 0011001
Mquina de estado finito sumador en serie
Disee una mquina de estado finito que realice la suma en serie.
Se representar la mquina de estado finito por su diagrama de transicin.
Solucin:
Como el sumador en serie acepta pares de bits, el conjunto de entrada ser {00, 01, 10, 11}.
El conjunto de salida es: {0, 1}.
Dada una entrada x y, se toma una de dos acciones: se suman x y y, o se suman x, y y 1,
dependiendo de si el bit de acarreo es 0 o 1. Entonces existen dos estados que se llamarn C
(acarreo) y NC (ningn acarreo). El estado inicial es NC. En este punto se pueden dibujar los vrtices
y designar el estado inicial en el diagrama de transicin.
Despus se consideran las entradas posibles en cada vrtice.
Por ejemplo, si 00 es entrada a NC, debe producirse 0 y seguir en el estado NC. Entonces NC tiene un
ciclo con etiqueta 00/0. Como otro ejemplo, si entra 11 a C, se calcula 1 + 1 + 1 = 11. En este caso, la
salida es 1 y se contina en el estado C. As, C tiene un ciclo con etiqueta 11/1.
Como un ltimo ejemplo, si estamos en el estado NC y la entrada es 11, debe producirse 0 y nos
movemos al estado C. Al considerar todas las posibilidades, se llega al siguiente diagrama de
transicin.
Dos estados para la mquina de
estado finito sumador en serie.
Mquina de estado finito que
realiza la suma en serie.
AUTMATA DE ESTADO FINITO

Un autmata de estado finito es un tipo especial de mquina de estado finito.


Los autmatas de estado finito son de gran inters por su relacin con los lenguajes.

Un autmata de estado finito A = (I, O, S, f, g, 0) es una mquina de estado finito


en la que el conjunto de smbolos de salida es {0, 1} y donde el estado actual
determina la ltima salida.
Aquellos estados para los que la ltima salida es 1 se llaman estados de
aceptacin.
Dibuje un diagrama de transicin de la mquina de estado finito A definida por la
tabla. El estado inicial es 0. Muestre que A es un autmata de estado finito y
determine el conjunto de estados de aceptacin.

f g
I
a b a b
S
0 1 0 1 0
1 2 0 1 0
2 2 0 1 0

El diagrama de transicin se muestra en la siguiente figura. Si estamos en el


estado 0, la ltima salida fue 0. Si estamos en el estado 1 o 2, la ltima salida
fue 1; entones A es un autmata de estado finito. Los estados de aceptacin son
1 y 2.
f g
I
a b a b
S
0 1 0 1 0
1 2 0 1 0
2 2 0 1 0

El ejemplo muestra que la mquina de estado finito definida por un diagrama de


transicin, ser un autmata de estado finito si el conjunto de smbolos de salida es {0, 1}
y si, para cada estado , todas las aristas que llegan a tienen la misma etiqueta de salida.
El diagrama de transicin de un autmata de estado finito suele dibujarse con los
estados de aceptacin en crculos dobles y sin los smbolos de salida. Cuando volvemos a
dibujar el diagrama de transicin de la figura de esta manera, obtenemos el diagrama de
transicin en la figura:
Dibuje el diagrama de transicin del autmata de estado finito de la siguiente
figura como un diagrama de transicin de una mquina de estado finito.
Como 2 es un estado de aceptacin, se etiquetan todas sus aristas entrantes
con salida 1. Los estados 0 y 1 no son de aceptacin, de modo que se
etiquetan sus aristas entrantes y/o salidas con 0.
Se obtiene el diagrama de transicin de la figura.

Autmata de estado finito vuelto a


dibujar como diagrama de transicin
Autmata de estado finito. de una mquina de estado finito.
Como alternativa, se puede considerar un autmata de estado finito A como
consistente en:

1. Un conjunto finito I de smbolos de entrada


2. Un conjunto finito S de estados
3. Una funcin f del siguiente estado de S I en S
4. Un subconjunto A de S de estados aceptantes.
5. Un estado inicial S.

Si usamos esta caracterizacin, se escribe A = (I, S, f, A, ).


En la figura se ilustra el diagrama de transicin del autmata de estado finito
A = (I, S, f, A, ), donde
I = {a, b}, S = {0, 1, 2}, A = {2}, = 0, y f est dada por la
siguiente tabla:

f
I
a b
S
0 0 1
1 0 2
2 0 2
Diagrama de transicin

Si una cadena alimenta a un autmata de estado finito, terminar ya sea en un


estado de aceptacin o en un estado de no aceptacin. Este estado final
determina si el autmata de estado finito acepta la cadena.

También podría gustarte