ZHCU820Y September 2004 – June 2021
表 7-2 列出了各种数据类型的寄存器存储空间和存储器存储空间:
| 数据类型 | 寄存器存储 | 存储器存储 |
|---|---|---|
| char | 寄存器的位 0-7 | 8 位,与 8 位边界对齐 |
| unsigned char | 寄存器的位 0-7 | 8 位,与 8 位边界对齐 |
| short | 寄存器的位 0-15 | 16 位,与 16 位边界对齐 |
| unsigned short | 寄存器的位 0-15 | 16 位,与 16 位边界对齐 |
| int | 整个寄存器 | 16 位,与 16 位边界对齐 |
| unsigned int | 整个寄存器 | 16 位,与 16 位边界对齐 |
| enum (1) | 整个寄存器 | 16 位,与 16 位边界对齐 |
| float | 两个寄存器,不需要相邻 | 32 位,与 16 位边界对齐 |
| long | 两个寄存器,不需要相邻 | 32 位,与 16 位边界对齐 |
| unsigned long | 两个寄存器,不需要相邻 | 32 位,与 16 位边界对齐 |
| long long | 四个寄存器,不需要相邻 | 64 位,与 16 位边界对齐 |
| unsigned long long | 四个寄存器,不需要相邻 | 64 位,与 16 位边界对齐 |
| double | 四个寄存器,不需要相邻 | 64 位,与 16 位边界对齐 |
| long double | 四个寄存器,不需要相邻 | 64 位,与 16 位边界对齐 |
| 结构体 | 成员按其各自类型的需要存储。 | 与最大成员类型边界对齐的 8 位的倍数;成员根据其各自类型的需要进行存储和对齐。 |
| 数组 | 成员按其各自类型的需要存储。 | 成员按其各自类型的需要存储。结构中的所有数组都根据数组中每个元素的类型对齐。 |
| 指向数据成员的指针 | MSP430 寄存器的位 0-15。MSP430X 寄存器的位 0-19。 | 不尽相同,请参阅表 6-2 |
| 指向成员函数的指针 | 组件按其各自类型的要求存储 | 64 位,与 32 位边界对齐 |