网站大量收购闲置独家精品文档,联系QQ:2885784924

第4章 C51的特点与使用.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 C51的特点与使用

§4.1 C51新增加的内容 * §4.1.3 位运算符 ~:按位取反。例:WD_L= ~WD_L。 :按位与。例:a=WD_L0X08。 |:按位或。例:P1=BAK|0xc0。 ^:按位异或。例:P1=BAK^0xc0。 :左移。例:a=WD_H4。 :右移。例:a=WD_L4。 §4.2 C51的使用 * 1)在头文件reg51.h或其他头文件中,已经将各个特殊功能寄存器及可使用的位作了定义,用语句#include reg51.h将其加入就可以使用各特殊功能寄存器及其位了。 2)用语句#include stdio.h将头文件stdio.h加入后,即可使用C51的库函数。 3)频繁使用的变量,最好定义成片内RAM存储器类型,这样有利于提高程序的运行速度。 * 4)char变量有signed char和unsigned char,分别用于有符号字节变量和无符号字节变量,并非只用于保存字符。 5)中断服务函数中最好不要再调用其它函数。函数中为提高指令执行效率,会把工作寄存器作为直接寻址的片内RAM单元使用,例如当选用工作寄存器0组时,MOV A,R3与MOV A,03H是等价的。当中断服务函数使用的工作寄存器组与其它函数中使用的工作寄存器组不一致时,就会发生错误。 §4.2 C51的使用 * 6)注意逻辑运算符||、与位运算符|、的区别,关系运算符==与赋值运算符=的区别。||和用于连接两个条件,|和用两个变量或常量的运算。==用于连接两个变量或常量构成一个条件,=用于将一个变量或常量的值赋给一个变量。 7)对特殊功能寄存器的操作是通过sfr和sbit变量实现的。例如: IE=0x82,P1=0xc0,EA=0; §4.2 C51的使用 8)存储数据表可以用数组。例如: 例:unsigned char code zxb[]={0x77,0x14,0xB3, 0xB6,0xD4, 0xE6, 0xE7,0x34,0xF7, 0xF6, 0x00,0x80}; //0123456789- 字形表 9)对于无符号数,应使用无符号变量(unsigned)。虽然有符号变量(signed)可以处理无符号数,但这样做会降低运算速度。 * §4.2 C51的使用 10)尽量使用短一些的变量,能用8位(char)就不用16位(int),能用16位(int)就不用32位(long),这既能减少对存储器的占用,又能提高运算速度。 11)编写程序时,若对运算的优先级吃不准,应该多使用括号。例如: if ((CXKBAK1= =0x54)(CXKBAK2= =0x32)(i= =0x10)) * §4.2 C51的使用 * §4.2 C51的使用 * * * 单片机原理与应用电子课件 第 4 章 C51的特点与使用 * 本章主要内容: 4.1 C51新增加的内容 4.2 C51的使用特点 C51简介 C51是一种在51内核单片机上使用的C语言。相对于汇编语言,C51具有很强的语言表达能力和运算能力,而且可移植性很好。在单片机上用C编写程序,可以有效地提高程序员的工作效率。过去,由于单片机硬件系统运算速度慢,存储器资源少,而实现同样功能的C语言程序,其占用的存储器空间比汇编语言大很多,耗费的时间比汇编语言长很多,使用C语言比较困难。近年来,单片机的运算速度大大提高,存储器的价格大幅降低,而在专业人员的不断努力下,C51编译软件功能增强,使得C51机器码占用的存储器空间缩小,运算速度加快,在单片机系统中使用C51进行程序设计得以实现。 * * §4.1 C51新增加的内容 C51与ANSI C的规范绝大部分是相同的,以下仅对C51的特殊部分进行必要的说明。 §4.1 C51新增加的内容 §4.1.1 C51的变量定义 C51中定义变量的格式如下: [存储种类] 数据类型 [存储器类型] 变量名表; 存储种类:与标准C相同,有:auto(自动)、extern(外部)、static(静态)和register(寄存器)。 数据类型:除了与标准C相同的数据类型外,还新增了:bit、sfr、sfr16、sbit。 存储器类型:C51中所没有的,

文档评论(0)

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

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

1亿VIP精品文档

相关文档