116
Chapter 5: ActionScript Core Language Elements
Returns
A 32-bit integer.
Description
Operator (bitwise); converts
expression1
and
expression2
to 32-bit integers, and shifts all the
bits in
expression1
to the left by the number of places specified by the integer resulting from the
conversion of
expression2
. The bit positions that are emptied as a result of this operation are
filled in with 0 and bits shifted off the left end are discarded. Shifting a value left by one position
is the equivalent of multiplying it by 2.
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 two’s complement notation, with the minimum being -2147483648 or
0x800000000; numbers less than the minimum are converted to two’s complement with greater
precision and also have the most significant digits discarded.
The return value is interpreted as a two’s 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” on page 32
.
Example
In the following example, the integer 1 is shifted 10 bits to the left:
x = 1 << 10
The result of this operation is
x = 1024
. This is because 1 decimal equals 1 binary, 1 binary
shifted left by 10 is 10000000000 binary, and 10000000000 binary is 1024 decimal.
In the following example, the integer 7 is shifted 8 bits to the left:
x = 7 << 8
The result of this operation is
x = 1792
. This is because 7 decimal equals 111 binary, 111 binary
shifted left by 8 bits is 11100000000 binary, and 11100000000 binary is 1792 decimal.
If you trace the following example, you see that the bits have been pushed two spaces to the left:
// 2 binary == 0010
// 8 binary == 1000
trace(2 << 2); // output: 8
See also
>>= (bitwise right shift and assignment)
,
>> (bitwise right shift)
,
<<= (bitwise
left shift and assignment)
,
>>> (bitwise unsigned right shift)
,
>>>= (bitwise
unsigned right shift and assignment)
Summary of Contents for FLEX-FLEX ACTIONSCRIPT LANGUAGE
Page 1: ...Flex ActionScript Language Reference...
Page 8: ......
Page 66: ...66 Chapter 2 Creating Custom Classes with ActionScript 2 0...
Page 76: ......
Page 133: ...break 133 See also for for in do while while switch case continue throw try catch finally...
Page 135: ...case 135 See also break default strict equality switch...
Page 146: ...146 Chapter 5 ActionScript Core Language Elements See also break continue while...
Page 808: ...808 Chapter 7 ActionScript for Flash...
Page 810: ...810 Appendix A Deprecated Flash 4 operators...
Page 815: ...Other keys 815 Num Lock 144 186 187 _ 189 191 192 219 220 221 222 Key Key code...
Page 816: ...816 Appendix B Keyboard Keys and Key Code Values...
Page 822: ...822 Index...