# Real128 Data Type

Holds signed 128-bit (16-byte) IEEE floating-point values in the range −1.189731495357231765085759326628007E+4932 to −3.362103143112093506262677817321753E−4932 for negative values and 3.362103143112093506262677817321753E−4932 to 1.189731495357231765085759326628007E+4932 for positive values.

## Instructions

The data type `Real128`

gives the largest and smallest possible magnitudes for a number.
`Real128`

is two times the size of `Real64`

and four times the size of `Real32`

.

- Precision
- Know that floating-point data types cannot represent many values accurately. Operations such as comparisons can cause results that you think are incorrect. See Troubleshooting Data Types for more information.
- Default value
- When you declare a variable of type
`Real128`

and do not initialize it, its default value is zero (0.0). - Trailing zeros
- The floating-point data types cannot internally represent trailing 0 characters after the decimal point. Thus numbers such as 1.4200 and 1.42 are the same value. If you must show trailing zeros, then you must use a formatter procedure.
- Type characters
`Real128`

has no type characters.

## Shared methods and properties

`Real128.Bits As Int`

- Returns the number of available bits. This is always 128.
`Real128.Default As Real128`

- Returns the default value,
`0.0`

. `Real128.Epsilon As Real128`

- Returns the smallest difference between two values.
`Real128.IsInf(num As Real128) As Boolean`

- Returns true if
`num`

is infinity (positive or negative). Mathematical overflow is one cause of this result. `Real128.IsNaN(num As Real128) As Boolean`

- Returns true if
`num`

is not a number (Nan). “Zero divided by zero” and “square root of a negative” are two causes of this result. `Real128.IsNegInf(num As Real128) As Boolean`

- Returns true if
`num`

is negative infinity. `Real128.IsPosInf(num As Real128) As Boolean`

- Returns true if
`num`

is positive infinity. `Real128.Max As Real128`

- Returns the maximum positive value.
`Real128.Min As Real128`

- Returns the minimum negative value.
`Real128.Parse(str As String, Optional #fmt As Format) As Real128`

- Tries to parse a string that shows as a floating-point number.
- If
`#fmt`

is not given or is`#Null`

, then it uses the format of the local culture. Or you can be explicit with “`Format.#UserLocale`

”. - If
`#fmt`

is “`Format.#RealLiteral`

”, then it uses the format of a literal of type`Real128`

.

## Examples

```
Dim foo As Real128
```