Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Matlab UCH1 Clase12
Matlab UCH1 Clase12
Clase 12
•LENGUAJES FORMALES
•MAQUINA DE ESTADOS
FINITOS
1
DEFINICIONES PREVIAS
SIMBOLO.-
La noción más primitiva es la de símbolo, que es simplemente una
representación distinguible de cualquier información. Los símbolos
pueden ser cualesquiera, como w, 9, #, etc., pero nosotros vamos
a utilizar las letras a,b,c, etc. Un símbolo es una entidad
indivisible.
…………………………………………………………………………………………………………………………..….
……………………………………………………………………………………………………………………………...
……………………………………………………………………………………………………………………………...
……………………………………………………………………………………………………………………………….
…………………………………………………………………………………………………………………………..….
…………………………………………………………………………………………………………………………..….
……………………………………………………………………………………………………………………………...
……………………………………………………………………………………………………………………………...
……………………………………………………………………………………………………………………………….
…………………………………………………………………………………………………………………………..….
……………………………………………………………………………………………………………………………….
……………………………………………………………………………………………………………………………...
……………………………………………………………………………………………………………………………...
Nota.-
Una gramática es una forma de describir al lenguaje.
Ejemplo.-
Cuando una aplicación enciende o apaga un LED, existen
dos estados; un estado es cuando el LED está encendido y
el otro cuando está apagado.
Nota.-
Autómata del griego automatos (ατόματος) que significa
espontáneo o con movimiento propio,
Universidad de Ciencias y Humanidades 11
Algebra Computacional
Implementación:
Cuando se implementa el concepto de la maquina de estados, se
debe de elaborar una lluvia de ideas de todos los estados que
se necesitan para una determinada aplicación. Una vez hecho
esto se debe identificar el primer estado. Acto seguido
debemos responder la siguiente pregunta ¿Que condición se
necesita para salir de este estado y que estado es el
siguiente?
switch (STATE)
{
case (State0): // Encender LED0
break;
case (State1): // Encender LED1
break;
case (State2); // Encender LED0
break;
// ... y así continuamos
default:
STATE = State0 //Si por alguna razón un estado
//indefinido ocurre
}
Estado
inicial
Estado final
Universidad de Ciencias y Humanidades 18
Algebra Computacional
Nota.-
Las secuencias de eventos van a representarse por concatenaciones
de caracteres, esto es, por palabras. Así, en el ejemplo de la
máquina vendedora la palabra “1121” representa la secuencia de
eventos “meter 1”, “meter 1”, “meter 2”, “meter 1”.
Nota.-
El autómata acepta las palabras que empiezan con a, así como las
palabras que contienen aa, y también las que terminan en b, como
por ejemplo abab, aaaaa, baaa, etc. En cambio, no acepta baba
ni bba, babba, etc.
Universidad de Ciencias y Humanidades 22
Algebra Computacional
Ejemplo 2.-
Un autómata finito que acepta cualquier cantidad de 1s seguido de un 0.
0 1
1
0
q r q
q r