-3

有限状態マシン (開始、次の状態など) を描画しようとしていますが、7 つの状態のみを使用してこれを描画するにはどうすればよいですか?

テーブルがどのように見えるかを書きました。これはトークン テーブルに文字を入力します。たとえば、ユーザーが 1 を入力すると、真の T が出力されます。

入力/出力またはトークン

1   / T,
2   / F,
#   / ~,
!   / ~,
&   / ^,
*   / ^,
+   / v,
<>  / x,
!=  / x,
=>  / >,
--> / >,
--  / =,
=   / =,
==  / =,
(   / (,
)   / ),
4

1 に答える 1

0

入力シーケンスのプレフィックスごとに 1 つの状態が必要です。したがって、あなたの州はに対応する必要があります

"", "<", "!", "=", "-", "--"

通常、認識された入力シーケンスを完了するすべての入力文字は、対応する出力を生成してから初期状態に戻ります。入力シーケンスに寄与するが、まだ完了していない入力文字は、これまでに読み取ったプレフィックスに一致する状態遷移を引き起こします。また、どちらでもない入力はエラーとして報告されます。

ただし、テーブルにはいくつかのトリッキーな状況があります。それ自体が他の入力シーケンスのプレフィックスである入力シーケンスがいくつかあります。たとえば、入力に「=+」が含まれている場合。最初の「=」の後に「>」があるかどうかわからないので、まだ何も出力できません。「+」の後には、最初に「=」を出力し、その後すぐに「+」を出力する必要があることがわかります。したがって、オートマトンは遷移ごとに複数の出力を処理するように設計する必要があります。

于 2012-10-07T10:22:02.243 に答える