Saltar al contenido principal

Operadores bit a bit y marcas

&, |, ^, ~, << y >> funcionan con valores Integer de 64 bits con la semántica de C, y con nada más. Sirven sobre todo para combinar constantes de marca, comprobar bits en los valores que devuelven las funciones integradas y desempaquetar colores.

TareaExpresión
Combinar marcasFileNotify.FileName | FileNotify.LastWrite
Comprobar una marca(mask & FileNotify.Size) != 0
Activar una marcamask = mask | flag;
Borrar una marcamask = mask & ~flag;
Alternar una marcamask = mask ^ flag;
Comprobar el bit n((value >> n) & 1) == 1 o (value & (1 << n)) != 0
Par / impar(n & 1) == 0
Desempaquetar 0xRRGGBBr = (c >> 16) & 0xFF; g = (c >> 8) & 0xFF; b = c & 0xFF;
Tecla presionada (de KeyboardGetKeyState)(state & 0x8000) != 0. El bit alto del SHORT de Win32 se extiende con signo, así que state < 0 también funciona.
Tecla alternada (Caps Lock, etc.)(state & 1) != 0

DisplayGetPixelColorFromPoint devuelve 0xRRGGBB empaquetado en un Integer, o -1 cuando el punto no está en ningún monitor.