Flash CS3 ドキュメンテーション |
|||
| ActionScript 2.0 リファレンスガイド > ActionScript 言語エレメント > 演算子 > ~ ビット単位の否定 (NOT) 演算子 | |||
~expression
1 の補数演算子またはビット単位の補数演算子とも呼ばれます。expression を 32 ビット符号付き整数に変更し、ビット単位で 1 の補数を適用します。つまり、0 を保持するすべてのビットは 1 に設定され、1 を保持するすべてのビットは 0 に設定されます。結果は、符号付き 32 ビット整数です。
たとえば、0x7777 という 16 進数値は、2 進数では 0111011101110111 と表現されます。
この 16 進数値をビット単位で符号反転 (~0x7777) すると、1000100010001000 という 2 進数になります。
16 進数では、これは 0x8888 になります。したがって ~0x7777 は 0x8888 です。
ビット単位演算子は、フラグビットを表現する場合に最もよく使用されます (ブール値をそれぞれ 1 ビットにパックすることができます)。
浮動小数点数は、小数点以下が切り捨てられて整数に変換されます。正の整数は 4294967295 (0xFFFFFFFF) を最大値とする符号なし 16 進値に変換されます。最大値より大きい値は、32 ビットを超えないように、変換時に最上位の桁が切り捨てられます。負の値は、2 の補数表現を使用して、-2147483648 (0x800000000) を最小値とする符号なし 16 進値に変換されます。最小値よりも小さい値は、さらに高い精度で 2 の補数に変換されたうえで、最上位の桁が切り捨てられます。
戻り値は符号付きの 2 の補数として解釈されるため、戻り値は -2147483648 から 2147483647 の整数になります。
対応バージョン : ActionScript 1.0、Flash Player 5
expression : Number - 数値。
Number - ビット演算の結果。
次に、フラグビットでビット単位の否定 (NOT) (-) 演算子を使用する例を示します。
var ReadOnlyFlag:Number = 0x0001; // defines bit 0 as the read-only flag var flags:Number = 0; trace(flags); /* To set the read-only flag in the flags variable, the following code uses the bitwise OR: */ flags |= ReadOnlyFlag; trace(flags); /* To clear the read-only flag in the flags variable, first construct a mask by using bitwise NOT on ReadOnlyFlag. In the mask, every bit is a 1 except for the read-only flag. Then, use bitwise AND with the mask to clear the read-only flag. The following code constructs the mask and performs the bitwise AND: */ flags &= ~ReadOnlyFlag; trace(flags); // output: 0 1 0
& ビット単位の論理積 (AND) 演算子, &= ビット単位の論理積 (AND) 代入演算子, ^ ビット単位の排他的論理和 (XOR) 演算子, ^= ビット単位の排他的論理和 (XOR) 代入演算子, | ビット単位の論理和 (OR) 演算子, |= ビット単位の排他的論理和 (OR) 代入演算子
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00001256.html