C语言在单片机开发中的应用
2012-03-15辽宁对外经贸学院
电子世界 2012年14期
辽宁对外经贸学院 孙 静
C是一种编译型语言.有高级语言的特点,并具备汇编语言的功能,移植性能好,便于自顶向下结构化程序设计,C语言在单片机中的应用,给开发者带来了很大的方便.软件开发者不需要对单片机硬件的结构有很深人的了解,编译器可以自动完成变量存储单元的分配.使得单片机的程序设计更加简单可靠。指针、地址、数组及其相互关系是C语言中最有特色的部分。在编写单片机的应用程序时,常常需要对端口及存储单元进行寻址.因此,掌握指针在这些寻址过程的工作原理是很有必要的,这有利于编写灵活高效的程序。
一、指针结构声明
C语言中,对于指针的声明采用如下形式:类型标识符*指针变量名;由于单片机存储区的关系,所以单片机C语言的指针声明格式有别于普通C语言指针的声明格式,其格式为:
类型标识符[存储区类型]
指针变量名[指针变量存储区类型]
单片机C语言的指针的定义比普通C语言指针的定义多两个部分:存储区类型是指指针变量所指向的数据的存储区,可以是所有的数据存储类型;指针变量存储区类型是指指针变量的存放区域的数据,可以是data、ldata、xdata或pdata如下声明:unsigned char xdata *data yc;
上声明语句是指在RAM(data)内声明一指针变量yc,该指针变量指向一无符号字符型数据,该无符号型字符存在xdata区内。该指针变量的应用格式如下:

其编译后的的汇编为:MOV 08H,#00H;0x08和0x09是在片内RAM存储区分配的yc指针变量的地址空间。
