Used to perform a logical equivalence on two expressions.

## Syntax

*result*=*expression1* **Eqv** *expression2*

The **Eqv** operator syntax has these parts:

Part | Description |
---|---|

result |
Required; any numeric variable. |

expression1 |
Required; any expression. |

expression2 |
Required; any expression. |

## Remarks

If either expression is Null, *result* is also **Null**. When neither expression is **Null**, *result* is determined according to the following table.

If expression1 is |
And expression2 is |
The result is |
---|---|---|

True |
True |
True |

True |
False |
False |

False |
True |
False |

False |
False |
True |

The **Eqv** operator performs a bitwise comparison of identically positioned bits in two numeric expressions and sets the corresponding bit in *result* according to the following table.

If bit in expression1 is |
And bit in expression2 is |
The result is |
---|---|---|

0 | 0 | 1 |

0 | 1 | 0 |

1 | 0 | 0 |

1 | 1 | 1 |

## Example

This example uses the **Eqv** operator to perform logical equivalence on two expressions.

```
Dim A, B, C, D, MyCheck
A = 10: B = 8: C = 6: D = Null ' Initialize variables.
MyCheck = A > B Eqv B > C ' Returns True.
MyCheck = B > A Eqv B > C ' Returns False.
MyCheck = A > B Eqv B > D ' Returns Null.
MyCheck = A Eqv B ' Returns -3 (bitwise comparison).
```