# math¶

Mathematical expressions.

```
math(EXPR <output-variable> <math-expression> [OUTPUT_FORMAT <format>])
```

`EXPR`

evaluates mathematical expression and returns result in the
output variable. Example mathematical expression is `5 * (10 + 13)`

.
Supported operators are `+`

, `-`

, `*`

, `/`

, `%`

, `|`

, `&`

,
`^`

, `~`

, `<<`

, `>>`

, and `(...)`

. They have the same meaning
as they do in C code.

Numeric constants are evaluated in decimal or hexadecimal representation.

The result is formatted according to the option “OUTPUT_FORMAT” ,
where `<format>`

is one of:

```
HEXADECIMAL = Result in output variable will be formatted in C code
Hexadecimal notation.
DECIMAL = Result in output variable will be formatted in decimal notation.
```

For example:

```
math(EXPR value "100 * 0xA" DECIMAL) results in value is set to "1000"
math(EXPR value "100 * 0xA" HEXADECIMAL) results in value is set to "0x3e8"
```