Início / Calculadoras / Simulador de máquina de estados finitos (FSM) online
Ferramentas online gratuitas

Simulador de máquina de estados finitos (FSM) online

Simule uma máquina de estados finitos determinística. Introduza regras, estado inicial e entrada para ver o caminho e o estado final.

Começar a usar

O que pode fazer com este simulador

Este simulador processa uma cadeia de entrada de acordo com uma tabela de transições determinística. Não possui estados de aceitação, transições épsilon, ramificações não determinísticas, conversão para expressões regulares, minimização ou diagramas. A simulação é feita inteiramente no navegador.

Exemplo concreto

Considere as regras:

q0,0,q0
q0,1,q1
q1,0,q0
q1,1,q1

Com estado inicial q0 e entrada 1011, o caminho percorrido é:

q0 -> q1 -> q0 -> q1 -> q1

O estado final é q1.

Limitações e validação

  • O número de regras deve estar entre 1 e 200.
  • Os nomes dos estados não podem ser vazios e têm no máximo 50 unidades de código UTF-16.
  • Cada símbolo de entrada é exatamente um ponto de código Unicode.
  • Não pode haver duas regras com o mesmo par estado-símbolo; duplicados são rejeitados.
  • A cadeia de entrada é limitada a 10000 unidades de código UTF-16.
  • As vírgulas são estruturais e não podem aparecer em nomes de estados ou símbolos.

Perguntas frequentes

O que acontece se faltar uma transição?

Se não existir uma regra para o par estado-símbolo atual, a simulação para e é apresentado um erro geral, sem indicar o carácter ou a posição.

Como são tratados caracteres fora do plano básico Unicode?

Cada símbolo de entrada é um ponto de código Unicode. Se usar caracteres fora do BMP (por exemplo, U+1F600), deve escrevê-los diretamente no campo de entrada; o simulador processa cada ponto de código como um símbolo.

Posso usar espaços ou outros separadores?

Use vírgulas como separadores. Os espaços nas extremidades de cada campo são removidos; espaços no interior dos nomes dos estados são permitidos. Um espaço isolado não pode ser símbolo de entrada.

Os nomes dos estados e o estado inicial admitem até 50 unidades de código UTF-16; a entrada, 10000. Os espaços nas extremidades dos campos das regras são removidos, pelo que um símbolo só de espaços não é aceite. Copie exatamente o estado inicial, respeitando maiúsculas e sem espaços nas extremidades. Uma entrada vazia mantém o estado inicial. Uma transição em falta gera apenas um erro geral, sem posição nem caminho parcial.

O processamento é feito localmente no navegador.