User Guide

128 Chapter 5: ActionScript Core Language Elements
Floating-point numbers are converted to integers by discarding any digits after the decimal point.
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.
For more information, see “Operator precedence and associativity” on page 32.
Example
The following example converts -1 to a 32-bit integer and shifts it 1 bit to the right:
var x:Number = -1 >>> 1;
trace(x); // output: 2147483647
This is because -1 decimal is 11111111111111111111111111111111 binary (thirty-two 1’s),
and when you shift right (unsigned) by 1 bit, the least significant (rightmost) bit is discarded, and
the most significant (leftmost) bit is filled with a 0. The result is
01111111111111111111111111111111 binary, which represents the 32-bit integer
2147483647.
See also
>>= (bitwise right shift and assignment)
>>>= (bitwise unsigned right shift and assignment)
Availability
Flash Player 5.
Usage
expression1 >>>= expression2
Parameters
expression1
A number or expression to be shifted left.
expression2 A number or expression that converts to an integer from 0 to 31.
Returns
A 32-bit integer.
Description
Operator (bitwise compound assignment); performs an unsigned bitwise right-shift operation
and stores the contents as a result in
expression1. The following two expressions are equivalent:
A >>>= B
A = (A >>> B)
For more information, see “Operator precedence and associativity” on page 32.
See also
>>> (bitwise unsigned right shift)
, >>= (bitwise right shift and assignment)