# Arithmetic FunctionsArithmetic Functions

This topic defines language for the flex parser arithmetic functions.

This topic defines language for the flex parser arithmetic functions. All numbers are 64-bit unsigned values and subject to both underflow and overflow, depending on the operation.

## Language DefinitionLanguage Definition

The following table provides language definitions.

Node Name Attribute Name Description
and Performs bitwise AND between two numbers.
name Variable to AND result into.
value Number to AND into result.
or Performs bitwise OR between two numbers.
name Variable to OR result into.
value Number to OR into result.
increment Performs ADDITION of two numbers.
value Number to ADD to initial value.
decrement Performs SUBTRACTION of two numbers.
name Variable containing initial value AND to receive SUBTRACTION results.
value Number to SUBTRACT from initial value.
divide Performs DIVISION of two numbers.
name Variable containing the initial value AND to receive DIVISION results.
value Number by which to divide the initial value. Division by zero generates an error and stops any further processing of the current session by this parser.
modulo Performs MODULO of two numbers.
name Variable containing the initial value AND to receive MODULO results.
value Number by which to divide the initial value. Division by zero generates an error and stops any further processing of the current session by this parser.
multiply Performs MULTIPLICATION of two numbers.
name Variable containing the initial value AND to receive MULTIPLICATION results.
value Number by which to MULTIPLY the initial value.
shiftleft Performs a binary shift left.
name Variable containing the initial value AND to receive shift results.
value Number of bits to shift by.
shiftright Performs a binary shift right.
name Variable containing the inital value AND to receive shift results.
value Number of bits to shift by.