В стандарте C99 представлены следующие типы данных. Документацию можно найти здесь для библиотеки stdint AVR.
-
uint8_tозначает 8-разрядный неподписанный тип. -
uint_fast8_tозначает, что это самый быстрый беззнаковый int с не менее чем 8 биты. -
uint_least8_tозначает, что он имеет unsigned int с по меньшей мере 8 битами.
Я понимаю uint8_t и что такое uint_fast8_t (я не знаю, как он реализован на уровне регистра).
1. Можете ли вы объяснить, что означает "это a unsigned int с по меньшей мере 8 бит"?
2. Как uint_fast8_t и uint_least8_t помогают повысить эффективность/кодовое пространство по сравнению с uint8_t?