User Guide

60 Chapter 2: ActionScript Language Reference
^ (bitwise XOR)
Availability
Flash Player 5.
Usage
expression1 ^ expression2
Parameters
expression1,expression2
A number.
Returns
A 32-bit integer.
Description
Operator (bitwise); converts expression1 and expression2 to 32-bit unsigned integers, and
returns a 1 in each bit position where the corresponding bits in
expression1 or expression2,
but not both, are 1. Floating-point numbers are converted to integers by discarding any digits
after the decimal point. The result is a new 32-bit integer.
Positive integers are converted to an unsigned hex value with a maximum value of 4294967295 or
0xFFFFFFFF; values larger than the maximum have their most significant digits discarded when
they are converted so the value is still 32-bit. Negative numbers are converted to an unsigned hex
value via the twos complement notation, with the minimum being -2147483648 or
0x800000000; numbers less than the minimum are converted to twos complement with greater
precision and also have the most significant digits discarded.
The return value is interpreted as a twos complement number with sign, so the return value will
be an integer in the range -2147483648 to 2147483647.
For more information, see “Operator precedence and associativity” in Using ActionScript in Flash.
Example
The following example uses the bitwise XOR operator on the decimals 15 and 9, and assigns the
result to the variable
x:
// 15 decimal = 1111 binary
// 9 decimal = 1001 binary
var x:Number = 15 ^ 9;
trace(x);
// 1111 ^ 1001 = 0110
// returns 6 decimal (0110 binary)
See also
& (bitwise AND), &= (bitwise AND assignment), ^= (bitwise XOR assignment), | (bitwise OR),
|= (bitwise OR assignment), ~ (bitwise NOT)