# Datatypes

## Type details

Type | Description | Minimum Value | Maximum Value |
---|---|---|---|

BIT | BIT is a 1 bit number. | 0 | 1 |

U8 | U8 is an unsigned 8-bit integer. | 0 | 255 |

U16 | U16 is an unsigned 16-bit integer. | 0 | 65,535 |

U32 | U32 is an unsigned 32-bit integer. | 0 | 4,294,967,295 |

U64 | U64 is an unsigned 64-bit integer. | 0 | 18,446,744,073,709,551,615 |

S8 | S8 is a signed 8-bit integer. | -128 | 127 |

S16 | S16 is a signed 16-bit integer. | -32,768 | 32,767 |

S32 | S32 is a signed 32-bit integer. | -2,147,483,648 | 2,147,483,647 |

S64 | S64 is a signed 64-bit integer. | -9,223,372,036,854,775,808 | 9,223,372,036,854,775,807 |

F16 | F16 is a 16-bit floating point number. | Implementation-dependent | Implementation-dependent |

Each of these data types serves a specific purpose and can be used to optimize memory usage and computational performance in your system.

### Bits

A BIT represents a binary digit, which is the smallest unit of data in a computer system. It can hold one of two values.

### Integer numbers

"Signed" means it can represent both positive and negative values.

"Unsigned" means it can only represent non-negative whole numbers.

### Floating point numbers

Floating point numbers are designed to represent real numbers, allowing for a wide range of values with varying degrees of precision. The range and precision of these numbers depends on the specific implementation.

See also: WARNING: Use of Floating-Point Values in Embedded Applications