sbit就是定义一个标志位,也叫位变量,比如一个8位的寄存器就可以看作八个位变量。
#define就是替代或者替换的意思,
主要就是用一个好记的名字替换一句不好记或者很长的鸟语啦。
所以你的#define key1 P3^0说不通,P3^0不是寄存器而是指向性质的,
如果你用#include
sbit 好像是C51中加的几个 保留词吧
sbit 定义 就像int x; unsigned char x; 定义变量一样 sbit 定义了一个位变量
在后面的程序中可以直接操作sbit 定义的变量
#define 还是C里面的那个define 宏定义 不是定义变量用的
那样对key1操作 就是操作P3^0这个标识符 而这个标识符没有被(也不能)定义成变量(位变量)
kell 的帮助文件(F1)里面有介绍的很多 网上也有中文的