- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
局部变量说明.ppt
单片机C语言编程 51系列单片机支持三种高级语言,即PL/M,C和BASIC。 C语言是一种通用的程序设计语言,其代码率高,数据类型及运算符丰富,并具有良好的程序结构,适用于各种应用的程序设计,是目前使用较广的单片机编程语言。 MCS-51系列单片机采用的C语言 ,简称C51。 C51符合C语言的ANSI标准,并根据单片机的特性进行了扩展, C51所产生的目标代码短、运行速度高、所需存储空间小、 单片机C语言编程 主要内容 4.1 C51程序结构 4.2 C51的数据类型与运算符 4.2.1 存储类型 4.2.2 存储模式 4.2.3 数据类型 4.2.4 C51的指针 4.2.5 对扩展外设的访问 4.2.6 运算符 4.3 C51的函数 4.3.1 函数的定义 4.3.2 函数的参数传递及返回值传递 4.3.3 函数的调用 4.3.4 库函数与宏定义 4.4 程序设计 4.4.1 程序设计方法 4.4.2 程序设计实例 4.1 C51的程序结构 同ANSI C一样,C51的程序由一个个函数组成,这里的函数和其他语言的“子程序”或“过程 ”具有相同的意义。 必须有一个主函数main(),程序的执行从main()函数开始,调用其 他函数后返回主函数main(),最后在主函数中结束整个程序而不管函数的排列顺序如何。 4.1 C51的程序结构 C语言的语句规则: 1. 每个变量必须先说明后引用,变量名英文大小写是有差别的。 2. C语言程序一行可以书写多条语句,但每个语句必须以“;”结尾,一个语句也可以多行书写。 3. C语言的注释用/*……*/表示。 4. “{”花括号必须成对,位置随意,可在紧挨函数名后,也可另起一行,多个花括号可以同行书写,也可逐行书写,为层次分明,增加可读性,同一层的“{”花括号对齐,采用逐层缩进方式书写。 4.2 C51的数据类型与运算符 4.2.1 C51的存储类型 1 数据存储区 1) 内部数据存储区 ① data ② idata ③ bdata 2) 外部数据存储区 ① xdata ② pdata 2 程序存储器 ① code 4.2 C51的数据类型与运算符 4.2.2 C51的存储模式 存贮器模式决定了变量的默认存贮器类型、参数传递区和无明确存贮区类型的说明。 #pragma small(large\compact) C51的存贮器模式有SMALL、LARGE和COMPACT。 在固定的存贮器地址进行变量参数传递是C51的一个标准特征, SMALL模式下参数在内部数据存贮区中传递,默认的存储区类别为data ; COMPACT模式下参数在外部存贮器中传递,默认的存储区类别为pdata ; LARGE模式下参数在外部存贮器中传递,默认的存储区类别为xdata。 4.2 C51的数据类型与运算符 4.2.3 C51的数据类型 无论哪种数据都是存放在存贮单元中的,每一个数据究竟要占用几个单元(即数据的长度)都要提供给编译系统,编译系统以此为根据预留存贮单元,这就是定义数据类型的意义. C51支持的数据类型有常量、变量、指针。 C51支持的ANSI C的数据类型 存储时‘先高后低’原则; 常量const位置与定义说明有关,code一般放在程序存储区。 4.2 C51的数据类型与运算符 4.2.3 C51的数据类型 4.2 C51的数据类型与运算符 4.2.4 C51的指针 1)指向不同存储区变量的通用指针 指针能适用于指向任何存贮空间,此时指针长度为3字节,第一字节表示存贮器类型编码,第二、三字节分别表示所指地址的高位和低位。 unsigned char *ptr; //通用指针ptr,指针存放在默认存储区 unsigned char * idata iptr ; //通用指针iptr,指针存放在idata存储区 2)指向固定存储区变量的指针 定义为data或idata,表示指针指示内部数据存贮器; 定义为pdata,表示指针指向外部数据存贮
文档评论(0)