From the Oracle docs for BITAND:
“The result is computed in several steps. First, each argument A is replaced with the value SIGN(A)*FLOOR(ABS(A)). This conversion has the effect of truncating each argument towards zero. Next, each argument A (which must now be an integer value) is converted to an n-bit two’s complement binary integer value. The two bit values are combined using a bitwise AND operation. Finally, the resulting n-bit two’s complement value is converted back to NUMBER.”
Put simply, this function truncates its arguments, converts them to a binary number (currently limited to 128 bits), AND’s the two binary numbers together, and returns the result of converting the binary number back to a NUMBER.
DESCRIBE FUNCTION <function_name>;
DESCRIBE FUNCTION EXTENDED <function_name>;