附录一 C51中的关键字 |
关键字
|
用 途
|
说 明
|
auto
|
存储种类说明
|
用以说明局部变量,缺省值为此
|
break
|
程序语句
|
退出最内层循环
|
case
|
程序语句
|
Switch语句中的选择项
|
char
|
数据类型说明
|
单字节整型数或字符型数据
|
const
|
存储类型说明
|
在程序执行过程中不可更改的常量值
|
continue
|
程序语句
|
转向下一次循环
|
default
|
程序语句
|
Switch语句中的失败选择项
|
do
|
程序语句
|
构成do..while循环结构
|
double
|
数据类型说明
|
双精度浮点数
|
else
|
程序语句
|
构成if..else选择结构
|
enum
|
数据类型说明
|
枚举
|
extern
|
存储种类说明
|
在其他程序模块中说明了的全局变量
|
flost
|
数据类型说明
|
单精度浮点数
|
for
|
程序语句
|
构成for循环结构
|
goto
|
程序语句
|
构成goto转移结构
|
if
|
程序语句
|
构成if..else选择结构
|
int
|
数据类型说明
|
基本整型数
|
long
|
数据类型说明
|
长整型数
|
register
|
存储种类说明
|
使用CPU内部寄存的变量
|
return
|
程序语句
|
函数返回
|
short
|
数据类型说明
|
短整型数
|
signed
|
数据类型说明
|
有符号数,二进制数据的最高位为符号位
|
sizeof
|
运算符
|
计算表达式或数据类型的字节数
|
static
|
存储种类说明
|
静态变量
|
struct
|
数据类型说明
|
结构类型数据
|
swicth
|
程序语句
|
构成switch选择结构
|
typedef
|
数据类型说明
|
重新进行数据类型定义
|
union
|
数据类型说明
|
联合类型数据
|
unsigned
|
数据类型说明
|
无符号数数据
|
void
|
数据类型说明
|
无类型数据
|
volatile
|
数据类型说明
|
该变量在程序执行中可被隐含地改变
|
while
|
程序语句
|
构成while和do..while循环结构
|
附表1-1 ANSIC标准关键字
|
关键字
|
用 途
|
说 明
|
bit
|
位标量声明
|
声明一个位标量或位类型的函数
|
sbit
|
位标量声明
|
声明一个可位寻址变量
|
Sfr
|
特殊功能寄存器声明
|
声明一个特殊功能寄存器
|
Sfr16
|
特殊功能寄存器声明
|
声明一个16位的特殊功能寄存器
|
data
|
存储器类型说明
|
直接寻址的内部数据存储器
|
bdata
|
存储器类型说明
|
可位寻址的内部数据存储器
|
idata
|
存储器类型说明
|
间接寻址的内部数据存储器
|
pdata
|
存储器类型说明
|
分页寻址的外部数据存储器
|
xdata
|
存储器类型说明
|
外部数据存储器
|
code
|
存储器类型说明
|
程序存储器
|
interrupt
|
中断函数说明
|
定义一个中断函数
|
reentrant
|
再入函数说明
|
定义一个再入函数
|
using
|
寄存器组定义
|
定义芯片的工作寄存器
|
|
附录二 AT89C51特殊功能寄存器列表(适用于同一架构的芯片) |
符 号
|
地 址
|
注 释
|
*ACC
|
E0H
|
累加器
|
*B
|
F0H
|
乘法寄存器
|
*PSW
|
D0H
|
程序状态字
|
SP
|
81H
|
堆栈指针
|
DPL
|
82H
|
数据存储器指针低8位
|
DPH
|
83H
|
数据存储器指针高8位
|
*IE
|
A8H
|
中断允许控制器
|
*IP
|
D8H
|
中断优先控制器
|
*P0
|
80H
|
端口0
|
*P1
|
90H
|
端口1
|
*P2
|
A0H
|
端口2
|
*P3
|
B0H
|
端口3
|
PCON
|
87H
|
电源控制及波特率选择
|
*SCON
|
98H
|
串行口控制器
|
SBUF
|
99H
|
串行数据缓冲器
|
*TCON
|
88H
|
定时器控制
|
TMOD
|
89H
|
定时器方式选择
|
TL0
|
8AH
|
定时器0低8位
|
TL1
|
8BH
|
定时器1低8位
|
TH0
|
8CH
|
定时器0低8位
|
TH1
|
8DH
|
定时器1高8位
|
带*号的特殊功能寄存器都是可以位寻址的寄存器 |
|
|
级 别
|
类 别
|
名 称
|
运算符
|
结合性
|
1
|
强制转换、数组、
结构、联合
|
强制类型转换
|
( )
|
右结合
|
下标
|
[ ]
|
存取结构或联合成员
|
->或.
|
2
|
逻 辑
|
逻辑非
|
!
|
左结合
|
字 位
|
按位取反
|
~
|
增 量
|
加一
|
++
|
减 量
|
减一
|
--
|
指 针
|
取地址
|
&
|
取内容
|
*
|
算 术
|
单目减
|
-
|
长度计算
|
长度计算
|
sizeof
|
3
|
算 术
|
乘
|
*
|
右结合
|
除
|
/
|
取模
|
%
|
4
|
算术和指针运算
|
加
|
+
|
减
|
-
|
5
|
字 位
|
左移
|
<<
|
右移
|
>>
|
6
|
关系
|
大于等于
|
>=
|
大于
|
>
|
小于等于
|
<=
|
小于
|
<
|
7
|
恒等于
|
==
|
不等于
|
!=
|
8
|
字 位
|
按位与
|
&
|
9
|
按位异或
|
^
|
10
|
按位或
|
|
|
11
|
逻 辑
|
逻辑与
|
&&
|
左结合
|
12
|
逻辑或
|
||
|
13
|
条 件
|
条件运算
|
?:
|
14
|
赋 值
|
赋值
|
=
|
复合赋值
|
Op=
|
15
|
逗 号
|
逗号运算
|
,
|
右结合
| |