BITAND( ) Function

Performs a bitwise AND operation on two or more values of Numeric, Varbinary, or Blob type and returns the result. There is a numeric and a binary version of the syntax.

BITAND(nNumericExpression1, nNumericExpression2, ... , nNumericExpression26)

BITAND(BinaryExpression1, BinaryExpression2, ... , BinaryExpression26)

Parameters

  • nNumericExpression1, nNumericExpression2, ... , nNumericExpression26
    Specifies Numeric values to perform the bitwise AND operation.

  • BinaryExpression1, BinaryExpression2, ... , BinaryExpression26
    Specifies Varbinary or Blob values to perform the bitwise AND operation.

    Note

    You can specify a maximum of 26 values. The specified values must have the same type. If the specified expressions are not integers, they are converted to integers before performing the operation.

Return Value

Numeric or Varbinary. BITAND( ) returns the result of the bitwise AND operation performed on the specified expressions.

Note

For Varbinary or Blob values, the return value is calculated as if all values are padded with 0h00 on the right of the value up to the length of the longest value. The appropriate operation is then performed between those values.

Remarks

BITAND( ) compares each bit in eExpressionN to the corresponding bit in eExpressionN+1. If the bits in eExpressionN and eExpressionN+1 are both 1, the corresponding result bit is set to 1; otherwise, the corresponding result bit is set to 0.

The following table shows the result of a bitwise AND operation on corresponding eExpressionN and eExpressionN+1 bits:

eExpressionN bit

eExpressionN+1 bit

Resulting bit

0

0

0

0

1

0

1

1

1

1

0

0

Example

x = 3  && 0011 binary
y = 6  && 0110 binary

? BITAND(x,y) && Returns 2, 0010 binary

See Also

Reference

BITCLEAR( ) Function

BITLSHIFT( ) Function

BITNOT( ) Function

BITOR( ) Function

BITRSHIFT( ) Function

BITSET( ) Function

BITTEST( ) Function

BITXOR( ) Function

Other Resources

Functions

Language Reference (Visual FoxPro)