MCS-51单片机C语言第8章.ppt

MCS-51单片机C语言第8章.ppt

ID:50547051

大小:1.58 MB

页数:114页

时间:2020-03-10

MCS-51单片机C语言第8章.ppt_第1页
MCS-51单片机C语言第8章.ppt_第2页
MCS-51单片机C语言第8章.ppt_第3页
MCS-51单片机C语言第8章.ppt_第4页
MCS-51单片机C语言第8章.ppt_第5页
资源描述:

《MCS-51单片机C语言第8章.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第8章C51程序设计语言及程序设计8.1C51数据类型与运算8.2C51流程控制语句8.3C51构造数据类型8.4C51函数8.5C51应用编程实例8.1C51数据类型与运算8.1.1C51数据类型8.1.2C51数据存储类型8.1.3C51定义SFR8.1.4C51定义并行口8.1.5C51定义位变量8.1.6C51运算符、表达式及其规则8.1.1C51数据类型C51具有标准C语言的所有标准数据类型,针对51单片机内部结构增加了以下特殊数据类型:(1)bit位变量。(2)sbit可独立寻址的位变量。(3)sfr8位特殊

2、功能寄存器。(4)sfr1616位特殊功能寄存器。8.1.1C51数据类型1.char字符类型char类型的数据长度是一个字节,通常用于定义处理字符数据的变量或常量。分无符号字符类型unsignedchar和有符号字符类型signedchar,默认值为signedchar类型。2.int整型int整型长度为两个字节,用于存放一个双字节数据。分有符号整型数signedint和无符号整型数unsignedint,默认值为signedint类型。8.1.1C51数据类型3.long长整型long长整型长度为四个字节,用于存放一

3、个四字节数据。分有符号长整型signedlong和无符号长整型unsignedlong,默认值为signedlong类型。4.float浮点型float浮点型在十进制中具有7位有效数字,是符合IEEE754标准的单精度浮点型数据,占用四个字节。8.1.1C51数据类型5.指针型指针型本身就是一个变量,在这个变量中存放的数据是指向另一个数据的地址。这个指针变量要占据一定的内存单元,对不一样的处理器长度也不尽相同,在C51中它的长度一般为1~3个字节。6.bit位变量bit位变量是C51编译器的一种扩充数据类型,利用它可定

4、义一个位标量,但不能定义位指针,也不能定义位数组。它的值是一个二进制位,不是0就是1,类似一些高级语言中的Boolean类型中的True和False。8.1.1C51数据类型7.sfr特殊功能寄存器sfr也是一种扩充数据类型,占用一个内存单元,值域为0~255。利用它能访问51单片机内部的所有特殊功能寄存器。8.sfr1616位特殊功能寄存器sfr16占用两个内存单元,值域为0~65535。sfr16和sfr一样用于操作特殊功能寄存器,不同的是它用于操作占两个字节的寄存器,如定时器T2。8.1.1C51数据类型9.sbi

5、t可寻址位sbit同样是单片机C语言中的一种扩充数据类型,利用它能访问芯片内部的RAM中的可寻址位或特殊功能寄存器中的可寻址位。8.1.1C51数据类型表8.1KeiluVision2单片机C语言编译器所支持的数据类型8.1.2C51数据存储类型C51编译器可以通过将变量、常量定义为不同的存储类型(data,bdata,idata,pdata,xdata,code)的方法,将它们定义在不同的存储区中。C51数据存储类型与MCS-51单片机实际存储空间的对应关系如表8.2所示。表8.2C51存储类型与MCS-51单片机存储

6、空间的对应关系当使用存储类型data,bdata定义常量和变量时,C51编译器会将它们定位在片内数据存储区中。片内RAM是存放临时性传递变量或使用频率较高变量的理想场所。访问片内数据存储器(data,bdata,idata)比访问片外数据存储器(xdata,pdata)相对快一些,因此可将经常使用的变量置于片内数据存储器,而将规模较大的,或不常使用的数据置于片外数据存储器中。C51存储类型及其大小和值域如表8.3所示。表8.3C51存储类型及其大小和值域如果在变量定义时略去存储类型标志符,编译器会自动默认存储类型。默认的

7、存储类型进一步有SMALL、COMPACT和LARGE存储模式指令限制。见表8.4。表8.4存储模式及说明8.1.3C51定义SFR在C51中,特殊功能寄存器及其可位寻址的位是通过关键字sfr和sbit来定义的,这种方法与标准C不兼容,只适用于C51。(1)sfr:定义为8位特殊功能寄存器。例如,sfrPSW=0xD0;//定义程序状态字PSW的地址为D0HsfrTMOD=0x89;//定义定时器/计数器方式控制寄存器TMOD的地址为89HsfrP1=0x90;//定义P1口的地址为90H“sfr”后面必须跟一个特殊寄存

8、器名;“=”后面的地址必须为常数,常数值的范围必须在特殊功能寄存器地址范围内,即位于地址0x80到0xff之间,不允许带有运算符的表达式。(2)sfr16:定义的16位特殊功能寄存器。例如,sfr16T2=0xCC;//定义8052定时器2,低8位地址为T2L=CCH,高8位T2H=CDH用sfr16定义16位特殊功

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。