第3章单片机C语言程序设计1资料.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
泉州信息学院 D.1 汇编语言与C语言 一、汇编语言 1.特点:直接操作单片机的硬件资源,执行速度快,实时性好,代码效率高; 2.为什么早期单片机系统开发采用汇编语言:由于早期的单片机存储器(包括数据存储器和程序存储器)容量较小,处理器速度较慢。 3.现在为什么逐步用C语言替代汇编语言:单片机硬件资源不断丰富,存储容量越来越大,C有很多优点。 二、C语言 1.编程效率高,移植性好; 2.以MCS-51及其兼容的单片机为目标处理器的C语言称为C51; 3.C51的单片机开发平台: (1)德国的KEIL:代码紧凑,使用方便。 (2)瑞典的IAR:性能好,资料丰富。 D.2 C51基本元素 C51的基本元素是指构成C51程序的基本要素,主要包括关键字、常量和变量等。 D.2.1 关键字 1.关键字又称保留字,是在程序中有特定意义的字符或字符串,它是C51规定的特定字符序列,必须在特定的地方,以特定的格式出现。 2.程序员不能更改,定义对象时不能与它们同名。 3.与汇编语言不同,C51是大小写敏感语言。 4.标准C语言关键字,见P271。 5.C51扩展关键字,见P72。 1.常量:在程序运行过程中其值保持固定不变的量。 2.常量分为数值常量和符号常量。 3.使用符号常量可以增加程序的可读性。应该先定义,后使用。格式如下: #define  常量名   常量值 相当于汇编语言伪指令“EQU”的功能。 #define  PI  3.1416 D.2.3 变量 变量:在程序运行过程中其值可变的量。 变量由变量名和变量值组成。 定义变量的格式如下: [存储种类]  数据类型  [存储器类型]  变量名表; 1.定义变量时,数据类型和变量名表是必须的,存储种类和存储器类型是可选的。 2.存储种类有4种:自动(auto)、外部(extern)、静态(static)和寄存器(register),缺省存储种类为自动。 3.数据类型分为基本数据类型和复杂数据类型,复杂数据类型由基本数据类型构造而成,如:数组、结构体等。 4.C51支持的基本数据类型,及其长度和值域如表3-1所示。 经常使用模式 事先定义: #define uint unsigned int #define uchar unsigned char uint a,b,c ; //可以使用到0~65535 uchar d=0x56; //只可以使用到0~255 bit定义位变量,但不能定义位指针,也不能定义位数组。 bit status; //定义位变量 sbit用于定义51单片机内可位寻址位,包括特殊功能寄存器中的可位寻址位。 有三种格式:(1)sbit LED=P1^1; (2)sbit LED=0X91; (3)sbit LED=0X90^1 sbit CY=PSW^7; sbit CY=0XD7; sbit CY=0XD0^7; 字节地址与位号之间、特殊功能寄存器与位号之间一般用“^”作间隔。 5.存储器类型:指定变量在51单片机系统中所保存的存储区域及寻址方式。 6.变量名表:指定义变量的变量名列表,可以是一个或多个变量名,多个变量名用逗号“,”分隔。 例如: static unsigned char i; signed int idata sum,max_data[6]; 3.3 C51运算符和表达式 3.4 C51语句和控制结构 例:定义一个指向外部RAM(2000H)的指针变量a,一个指向内部RAM(40H)的指针变量b,并把2000H单元的内容存放到40H单元。 uchar xdata *a; uchar data *b; a=0X2000; b=0X40; *b=*a; 例:将地址为2010H的1字节二进制数(256),转换成BCD码,保存在地址为2000H开始的存储单元中(高位在低地址)。 单片机原理与应用及C51程序设计 单片机C语言程序设计 D.1 汇编语言与C语言 D.2 C51基本元素 D.3 C51运算符和表达式 D.4 C51语句和控制结构 D.5 C51函数 D.6 数据排序Proteus仿真 习 题 以冒泡法排序为例,感受一下汇编程序和C51程序的区别: 1.C51程序结构简单,语句条数也少;占用存储器大,程序执行速度较慢。 2.汇编语言程序较复杂,指令条数也较多 ;占用存储器少,程序执行速度快。 3.将两组程序代码在KEIL平台编译,结果显

文档评论(0)

三哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档