1、数据类型:
C51即在51单片机上使用的C语言:
通常用 unsigned char 来定义一个单字节的数
注意:unsigned short int 和unsigned long int 的写法。
我们在该文中分析了补码的求法,我们在此,除了上图中用十进制表示的数据类型范围外,我们在此处还可以用十六进制来表示:
char | 80~7F |
unsigned char | 0~FF |
int | 8000~7FFF |
unsigned int | 0~FFFF |
long | 80000000~7FFFFFFF |
unsigned int | 0~FFFFFFFF |
2、C51相较C语言,扩充了几个数据类型:
sfr:特殊功能寄存器 //sfr SCON = 0X98; //已被封装在头文件中,用不到
sfr16:str的16位数据声明 //sfr16 T2 = 0XCC; //已被封装在头文件中,用不到
sbit:特殊功能位声明 //sbit OV = PSW^2;
bit:位变量声明
3、头文件
reg51.h reg52.h(定义特殊功能寄存器和位寄存器)
math.h //定义常用额数学运算
4、位操作
单片机中经常用到位运算:
>> << 左移 右移
& | 按位与 按位或
^ ~ 按位异或 按位取反
二进制数右移一位相当于除以2;左移一位相当于乘以2(限于末尾是0的情况):
如 1000 1000 (136) 右移一位变成 0100 0100(68)
0100 0100(68)左移一位变为 1000 1000 (136)。
5、主函数无参数无返回值 void main(){}