读到这里就很好理解data
关键字(实际上很少用到)与code
关键字,这里着重介绍code
关键字,因为它经常使用:
unsigned char code word[] = {
0x04,0x10,0x34,0x08,0xC4,0x06,0x04,0x01,
0xC4,0x82,0x3C,0x8C,0x20,0x40,0x10,0x30,
0x0F,0x0C,0xE8,0x03,0x08,0x0C,0x08,0x10,
0x28,0x60,0x18,0xC0,0x00,0x40,0x00,0x00,
};
int code val = 1201;
在单片机中一般都有两块存储区域,ROM和RAM,程序代码存储在ROM中,程序要用的变量存储在RAM中。而“code”的作用就是将其修饰过的变量存储在ROM中而非RAM。
在单片机中,RAM空间都比较小,是比较宝贵的。“code
”的意义就是将一些初始化后值一直保持不变的变量(如固定的常数、表格、常量数组、只读常量等)放置于ROM区,从而节省了RAM空间。
注意:用“code”修饰的变量是不能在程序运行时改变的!
剩下的提一下interrupt
与using
关键字,interrupt
是用于声明中断服务程序的关键字,using
与interrupt
结合使用,指定使用中断服务程序的寄存器组,这涉及到函数的压栈与出栈问题,只有深入了解了这块才能用好using
关