Stm32里的数据类型

时间:2025-01-23 17:10:49

stm32的数据类型的字节长度

-s8 占用1个byte,数据范围 -2^7 到 (2^7-1)
s16 占用2个byte,数据范围 -2^15 到 (2^15-1)
s32 占用 4个byte,数据范围 -2^31 到 (231-1)231 = 2147483647
int64_t占用8个byte,数据范围 -2^63 到 (2^63-1) 2^63 = 9223372036854775807ll

2、无符号整型

u8 占用1个byte, 数据范围 0 - 2^8
u16 占用2个byte, 数据范围 0 - 2^16
u32 占用4个byte, 数据范围 0 - 2^32 2^32 = 4294967295
uint64_t 占用8个byte, 数据范围 0 - 2^64 2^64 = 18446744073709551615
3、浮点型

float ——4个byte,有符号型,可以表达负数/小数; Float 类型至少要能精确表示到小数点后6位。

double——8个byte,有符号型,可以表达负数/小数;Double 类型至少要能精确到小数点后 10 位。

C语言的正负数

  • 一个类型的坐高位是符号位,最高位为1的话那么这个数就是负数,为0为正,在程序开发中负数是以正数的补码形式存在
  • 例如itest占有2个字节值为-20 = FFEC‬,20 = 00 14,-20 = 0014取反然后加1
  • 0000 0000 0001 0100---->取反-----> 1111 1111 1110 1011—加1-----》1111 1111 1110 1100=FFEC