0

次のような文字列を取得します: "000AND111"これを計算して、結果を返す必要があります。Flexでそれを行うにはどうすればよいですか?

4

2 に答える 2

1

@powerlljf3 によるピンバックのおかげで、この投稿を参照してください。

3段階のアプローチを提案します。

1- 文字列を意味のあるトークン (数値とオペランド) に分割する小さなパーサーを作成します。オペランドはすべてリテラルで、数字は 0/1 の組み合わせなので、パーサーは非常に簡単です (文法は LL1 です)。正規表現はここで実際に機能します。

2-トークンのシーケンスと、技術的に解析された式ツリーと呼ばれるもの(トークンとオペランドのシーケンス)を構築した後、特定の関数を使用してオペランドを実装するだけです(私のブログへのリンクは、一般的なブール代数のいくつかで機能しますオペランド)

3- 最後に、左から右にトークンの読み取りを開始し、オペランドが見つかった場所に関数を適用します。

于 2012-05-16T22:50:47.703 に答える
0

私はこのhttp://www.nicolabortignon.com/as3-bitwise-operations/を調べます。AS3 で使用できるバイナリ演算の例が多数含まれています。

于 2012-05-01T15:20:12.250 に答える