Learn R Programming

bitops (version 1.0-9)

bitAnd: Bitwise And, Or and Xor Operations

Description

Bitwise operations, ‘and’ (&), ‘or’ (|), and ‘Xor’ (xor).

Usage

bitAnd(a, b)
a %&% b
bitOr (a, b)
a %|% b
bitXor(a, b)
a %^% b

Value

non-negative integer valued numeric vector of maximum length of a or b.

Arguments

a,b

numeric vectors of compatible length, each treated as 32 bit “strings”.

Author

Steve Dutky; idea for operators: Dan L Robertson

Details

The bitwise operations are applied to the arguments cast as 32 bit (unsigned long) integers. NA is returned wherever the magnitude of the arguments is not less than \(2^31\), or, where either of the arguments is not finite.

For bitwise ‘not’ (! in R), use bitFlip().

See Also

bitFlip, bitShiftL; further, cksum.

Examples

Run this code
bitAnd(15,7) == 7 ;  identical(15 %&% 7, bitAnd(15, 7))
bitOr(15,7) == 15 ;  identical(15 %|% 7, bitOr (15, 7))
bitXor(15,7) == 8 ;  identical(15 %^% 7, bitXor(15,7))
bitOr(-1,0) == 4294967295 ; identical(-1 %|% 0, bitOr(-1,0))

Run the code above in your browser using DataLab