单片机原理
单片机就是通过编写的程序达到人们想控制的动作,其原理是在控制电平的高低,从而控制电子元器件工作;
二进制与十六进制
二进制表
二进制 | 十进制 | 二进制 | 十进制 |
---|---|---|---|
0 | 0000 | 1 | 0001 |
2 | 0010 | 3 | 0011 |
4 | 0100 | 5 | 0101 |
6 | 0110 | 7 | 0111 |
8 | 1000 | 9 | 1001 |
10 | 1010 | 11 | 1011 |
12 | 1100 | 13 | 1101 |
14 | 1110 | 15 | 1111 |
- 二进制转为十进制
例如:110
110转 02^0+121+1*22=0+2+4=6;
十六进制
十进制 | 十六进制 | 十进制 | 十六进制 |
---|---|---|---|
0 | 0 | 1 | 1 |
2 | 2 | 3 | 3 |
4 | 4 | 5 | 5 |
6 | 6 | 7 | 7 |
8 | 8 | 9 | 9 |
10 | A | 11 | B |
12 | C | 13 | D |
14 | E | 15 | F |
逻辑运算
与 (=>乘)
0 & 0 = 0; 1 & 0 = 0; 1 & 1 = 1;
或(有1则1)
0 | 0 = 0; 1 | 0 = 0 | 1 =1; 1 & 1 = 1;
非(取反)
! 1 = 0; ! 0 = 1;
同或 (相同则1)
0 @ 0 = 1; 0 @ 1 = 0; 1 @ 0 = 0; 1 @ 1 = 1;
异或(相同为0;不同为1)
0 @ 0 = 0; 0 @ 1 = 1; 1 @ 0 = 1; 1 @ 1 = 0;
基本数据类型
关键字 | 所占位数 | 范围 |
---|---|---|
unsigned char | 8 | 0~255 (2^8) |
char | 8 | -128-127 |
unsigned int | 16 | 0~65535 (2^16) |
int | 16 | -32768~32767 |
unsigned long | 32 | 0 ~ 2^32 |
long | 32 | -2^31 ~ 2^31-1 |
float | 32 | 3.4e-38 ~ 3.4e38 |
double | 64 | 1.7e-308 ~ 1.7e308 |
bit | 1 | 0 ~ 1 |
位运算符
位运算符 | 含义 |
---|---|
& | 按位与 |
^ | 异或 |
~ | 取反 |
>> | 右移 (=>) |
<< | 左移 ( <= ) |