COMPORT – Compilador Portugol - Nilo Menezes
COMPORT – Compilador Portugol - Nilo Menezes
COMPORT – Compilador Portugol - Nilo Menezes
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
δ Função programa ou de transição<br />
q0 Estado inicial<br />
F Conjunto de estados finais, tal que F ⊂ Q<br />
ComPort <strong>–</strong> <strong>Compilador</strong> <strong>Portugol</strong><br />
O processamento de um autômato finito M, para uma palavra de entrada<br />
w, consiste na sucessiva aplicação de δ para cada símbolo de w (da esquerda para<br />
a direita), até ocorrer uma condição de parada.<br />
Um autômato finito determinístico pode parar em três casos:<br />
1. Quando o processamento da entrada leva a um estado finito e a<br />
entrada é aceita.<br />
2. Quando um símbolo de entrada possui uma saída indeterminada pela<br />
função programa, neste caso a entrada é rejeitada.<br />
3. Quando a fita acaba e o autômato está num estado não-final, a entrada<br />
é rejeitada.<br />
Um autômato finito sempre pára, uma vez que um novo símbolo de<br />
entrada é lido a cada aplicação da função programa, não existindo a possibilidade<br />
de loop infinito, dada a natureza finita da fita.<br />
Figura 2 - Representação gráfica de um autômato<br />
Um exemplo de autômato finito determinístico seria aquele responsável<br />
por validar uma entrada que possua a seqüência ab, considerando-se Σ={a,b} como<br />
alfabeto, Q={q0, q1,qf} como os possíveis estados e F={qf}.<br />
Sendo δ a função programa abaixo:<br />
Tabela 1 - Função programa<br />
δ a b<br />
q0 q1 q0<br />
q1 q1 qf<br />
Qf qf qf<br />
Graficamente este autômato seria representado por:<br />
22