1.C51存储类型
对于在片外扩充的接口,可以根据硬件形成的地址,用#define语句进行定义,例如:
#define unsigned char xdata adAddr_at_0x2000;/*定义了片外接口地址为2000H*/
C51编译器支持80C51及其派生系列的体系结构,并提供对80C51所有存储区的访问。每个变量可以用表1中所列的存储器类型明确地分配到指定的存储空间。
表1C51存储类型与80C51存储空间的关系
全站搜索
数据类型 |
位 |
字节 |
值的范围 |
char |
8 |
1 |
-128~127 |
unsigned char |
8 |
1 |
0~255 |
enum |
16 |
2 |
-32768~32767 |
short |
16 |
2 |
-32768~32767 |
unsigned short |
16 |
2 |
0~65535 |
int |
16 |
2 |
-32768~32767 |
unsigned int |
16 |
2 |
0~65535 |
long |
32 |
4 |
-2147483648~2147483647 |
unsigned long |
32 |
4 |
0~4294967295 |
float |
32 |
4 |
±1.175494E-38~±3.402823E+38 |
bit |
1 |
- |
0,1 |
sbit |
1 |
- |
0,1 |
sfr |
8 |
1 |
0~255 |
sfr16 |
16 |
2 |
0~65535 |