"UnsignedInteger128" (Compiled Type)
represents an unsigned 128-bit machine integer atomic type specifier.
- "UnsignedInteger128" can be used in Typed and related constructs to specify a type.
- An integer of type "UnsignedInteger128" has a wider range than the machine integer expressions and has faster computation than software integer expressions.
- Suitably sized Integer expressions can be converted into compiled code elements with the type "UnsignedInteger128".
- "UnsignedInteger128" compiled elements can be converted into Integer expressions.
- "UnsignedInteger128" compiled elements are automatically promoted to real or complex elements when they are combined in binary arithmetic operations.
- Compiled elements with types smaller than "UnsignedInteger128" are automatically promoted to "UnsignedInteger128" when they are combined in binary arithmetic operations.
- "Integer128" compiled elements are automatically promoted to "UnsignedInteger128" elements when they are combined in binary arithmetic operations.
Basic Examples (4)
"UnsignedInteger128" can be used as an input and output from a CompiledCodeFunction:
An overflow causes an error while running the function. The computation is terminated, a message is issued and the Wolfram Engine is used to compute the result:
The "UnsignedInteger128" argument is automatically promoted when combined with a real number:
When an "UnsignedInteger128" argument is combined with an integer of a smaller storage size, the smaller type is automatically promoted:
The signed integer of the same storage size is automatically promoted when combined with an "UnsignedInteger128":
Computations with "UnsignedInteger128" can work with integers that exceed the size of machine integer expressions: