アクション > SWF 4 アクションモデル > 論理演算

論理演算

ActionAnd

ActionAnd は、 2 つの値の論理積 (AND) を実行します。

フィールド コメント
ActionAnd ACTIONRECORDHEADER ActionCode = 0x10

ActionAnd は次のことを行います。

  1. 値 A をスタックからポップする
  2. 値 B をスタックからポップする
  3. A と B を浮動小数点数に変換する。数値でない値の場合は 0 とする。
  4. 2 つの値が両方 0 でない場合、 SWF 5 以降: true をスタックにプッシュします。 SWF 4: 1 をスタックにプッシュします。
  5. 他の場合、 SWF 5 以降: false をスタックにプッシュします。 SWF 4: 0 をスタックにプッシュします。

ActionOr

ActionOr は、 2 つの値の論理和 (OR) を実行します。

フィールド コメント
ActionOr ACTIONRECORDHEADER ActionCode = 0x11

ActionOr は次のことを行います。

  1. 値 A をスタックからポップする
  2. 値 B をスタックからポップする
  3. A と B を浮動小数点数に変換する。数値でない値の場合は 0 とする。
  4. 2 つの値のうち、どちらかが 0 でない場合、 SWF 5 以降: true をスタックにプッシュします。 SWF 4: 1 をスタックにプッシュします。
  5. 他の場合、 SWF 5 以降: false をスタックにプッシュします。 SWF 4: 0 をスタックにプッシュします。

ActionNot

ActionNot は、 1 つの値の論理否定 (NOT) を実行します。

(注)
SWF 5 のファイルでは、 ActionNot 命令が引数を Boolean に変換し、結果の値を Boolean としてプッシュします。
SWF 4 のファイルでは、引数と結果が数値として扱われます。
フィールド コメント
ActionNot ACTIONRECORDHEADER ActionCode = 0x12
Result Boolean

ActionNot は次のことを行います。

  1. スタックから値をポップする
  2. 値を浮動小数点数に変換する。数値でない値の場合は 0 とする。
  3. 値が 0 の場合、 SWF 5 以降: true をスタックにプッシュします。 SWF 4: 1 をスタックにプッシュします。
  4. 値が 0 以外の場合、 SWF 5 以降: false をスタックにプッシュします。 SWF 4: 0 をスタックにプッシュします。

移動

最終更新:2017年02月20日 20:59