项目三 C51程序设计语言基础
任务1 C51程序的识读
C51程序结构
例3-1 P_test
/********************* //注释,还可用//注释掉一行
File name:P_test.c
Chip name:STC89C51RC
Clock frequency:1.20MHz
***********************/
#include “reg52.h” //预处理命令,文件包含预处理命令,后缀名都是.h,标准的MCS-51单片机头文件为”reg51.h”,STC89系列单片机头文件为”reg52.h”
#define unit unsigned int //宏定义预处理命令
sbit BZ=P3`7 ;
sbit key=P1`0;
void delay(unit ms)
{
unit i;
while( ms --)
{
for(i=0;i<120;i++);
}
}
void main(void)
{
while(1)
{
if(key==0)
{
BZ=0x0;
delayms(10);
BZ=0x1;
delayms(50);
P0=0xFF;
}
else
{
P0=~P0;
delayms(500);
}
}
}
C51的数据类型
位变量型 bit
字符型 无符号字符型 unsigned char
有符号字符型 signed char
C51的数据类型 整数型 无符号整数型 unsigned int
基本类型 有符号整数型 signed int
长整数型 无符号长整数型 unsigned long int
有符号长整数型signed long int
实数型(浮点型) 单精度浮点型float
双精度浮点型double
数组类型array
结构体类型struct
构造类型 共用体union
枚举enum
指针类型
空类型(void)
表3-1 C51基本数据类型的长度和值域
类型
长度/bit
长度/byte
范围
位变量型bit
1
0 ,1
无符号字符型 unsigned char
8
单字节
0-255
有符号字符型 signed char
8
单字节
-128-127
无符号整数型 unsigned int
16
双字节
0-65536
有符号整数型 signed int
16
双字节
-32768-32767
无符号长整数型 unsigned long int
32
四字节
有符号长整数型 signed long int
32
四字节
单精度浮点型 float
32
四字节
双精度浮点型 double
32
四字节
一般指针类型
24
三字节
C51的标识符和关键字
标识符是由字母、数字和下划线组成的字符串,第一个字符必须是字母或下划线,不超过32个字符。
表3-2 C51中的关键字
关键字
用途
说明
auto
存储种类声明
用来声明局部变量
bdata
存储器类型说明
可位寻址的内部数据存储器
break
程序语句
退出最内层循环体
bit
位变量语句
位变量的值是1(true)或0(flase)
case
程序语句
switch语句中的选择项
char
数据类型的声明
单字节整数型或字符型数据
关键字
用途
说明
code
存储器类型声明
程序存储器
const
存储类型说明
在程序执行过程中不可修改的变量值
cont