ビット演算子は整数値を2進数にして論理演算結果を返す演算子です。
比較したデータの各桁のビットが1のときに1を返し、それ以外のときは0を返します。
// 10 = 1010(2進数) // 7 = 0110(2進数) document.writeln(10 & 7);
比較したデータの各桁のビットのどちらかが1のときに1を返し、それ以外のときは0を返します。
// 10 = 1010(2進数) // 7 = 0110(2進数) document.writeln(10 | 7);
比較したデータの各桁が一致したときに一致したデータを反転し、 各桁のデータが不一致のときに0を返します。
// 10 = 1010(2進数) // 7 = 0110(2進数) document.writeln(10 ^ 7);
ビットを反転(1 => 0, 0 => 1)にします。
document.writeln(~7);
ビットを左にシフトします。1つシフトすると2倍になります。
document.writeln(7 << 2);
ビットを右にシフトします。1つシフトすると2分の1になります。
値が正か負によって動作が少し異なります。
// 正の場合は先頭に0が入る document.writeln(8 >> 2); // 負の場合は先頭に1が入る document.writeln(-8 >> 2);
ビットを右にシフトします。1つシフトすると2分の1になります。
値が正か負によっても動作が変わりません。
// 正の場合は先頭に0が入る document.writeln(8 >>> 2); // 負の場合も先頭に0が入る document.writeln(-8 >>> 2);
日付 | 詳細 |
---|---|
2011/06/21 | コンテンツ公開 |
Copyright (C) 2011 ほぷしぃ. All Rights Reserved.