C51的数据类型讲解学习.doc

C51的数据类型讲解学习.doc

ID:59307802

大小:38.00 KB

页数:4页

时间:2020-09-05

C51的数据类型讲解学习.doc_第1页
C51的数据类型讲解学习.doc_第2页
C51的数据类型讲解学习.doc_第3页
C51的数据类型讲解学习.doc_第4页
资源描述:

《C51的数据类型讲解学习.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C51的数据类型数据的格式通常称为数据类型。标准的C语言的数据类型可分为基本数据类型和组合数据类型,组合数据类型由基本数据类型构造而成。标准的C语言的基本数据类型有字符型char、短整型short、整型int、长整型long、浮点型float、和双精度型double。组合数据类型有数组类型、结构体类型、共同体类型和枚举类型,另外还有指针类型和空类型。C51的居类型也分为基本数据类型和组合数据类型,情况与标准C中的数据类型基本相同,但其中char型与short型相同,float型与double型相同。另外,C51中还有专门针对于M

2、CS-51单片机的特殊功能寄存器型和位类型。具体情况如下:1、字符型char有signedchar和unsignedchar之分,默认为signedchar。它们的长度均为一个字节,用于存放一个单字节的数据。对于signedchar,它用于定义带符号字节数据,其字节的最高位为符号位,“0”表示正数,“1”表示负数,补码表示,所能表示的数值范围是-128~+127;对于unsignedchar,评测用于定义无符号字节数据或字符,可以存放一个字节的无符号数,其所表示的数值范围为0~255。Unsignedchar可以用来存放无符号数

3、,也可以存放西文字符,一个西文字符占一个字节,在计算机内部用ASCII码存放。2、int整型有signedint和unsignedint之分,默认为signedint。它们的长度均为两个字节,用于存放一个双字节数据。对于signedint,它用一存放两字节带符号数,补码表示,所能表示的数值范围为-32768~+32767。对于unsignedint,它用于存放两字节无符号数,数的范围为0~65535。3、long长整型有signedlong和unsignedlong之分,默认为signedlong。它们的长度均为四个字节,用于存

4、放一个四字节数据。对于signedlong,它用于存放四字节带符号数,补码表示,所能表示的数值范围为-2147483648~+2147483647。对于unsignedlong,它用于存放四字节无符号数,所能表示的数值范围为0~4294967295。4、float浮点型float型数据的长度为四个字节,格式符合IEEE-754标准的单精度浮点型数据,包含指数和尾数两部分,最高位为符号位,“1”表示负数,“0”表示正数,其次的8位为阶码,最后的23位为尾数的有效位,由于尾数的整数部分隐含为“1”,所以尾数的精度为24位。在内存中的

5、格式如下图所示。字节地址3210浮点数的内容SEEE,EEEEEMMM,MMMMMMMM,MMMMMMMM,MMMM其中,S为符号位;E为阶码位,共8位,用移码表示。阶码E的正以值范围为1~254,而对应的指数实际取值范围为-126~+127;M为尾数的小数部分,共23位,尾数的整数部分始终为“1”。故一个浮点数的取值范围为(-1)S×2E-127×(1.M)。例如浮点数+124.75=+1111,100.11B=+1.11110111×2+110,符号位为“0”,8位阶码E为+110+1111111=10000101B,23位

6、数值位为11110011000000000000000B,32位浮点数表示形式为01000010111110011000000000000000B=42F98000H,在内存中的表式形式如下图所示。字节地址3210浮点数的内容01000010111110011000000000000000需要指出的是,对于浮点型数据除了正常数值之外,还可能出现非正常数值。根据IEEE标准,当浮点数据取以下数值(16进制数)时即为非正常值:FFFFFFFFH(非数NaN)7F800000H(正溢出+1NF)FF800000H(负溢出-1NF)另外

7、,由MCS-51单片机不包括捕获浮点运算错误的中断向量,因此必须由用户自己根据可能出现的错误条件用软件来进行适当的处理。5、*指针型指针型本身就是一个变量,在这个变量中存放着指向另一个数据的地址。这个指针变量要占用一定的内存单元。对不同的处理器其长度不一样,在C51中它的长度一般为1~3个字节。6、特殊功能寄存器这是C51扩充的数据类型,用于访问MCS-51单片机中的特殊功能寄存器数据。它分为sfr和sfr16两种类型,其中sfr为字节型特殊功能寄存器类型,占一个内存单元,利用它可以访问MCS-51内部的所有特殊功能寄存器;sf

8、r16为双字节型特殊功能寄存器类型,占用两个字节单元,利用它可以访问MCS-51内部的所有两个字节的特殊功能寄存器。在C51中对特殊功能寄存器的访问必须先用sfr或sfr16进行声明。7、位类型这也是C51中扩充的数据类型,用于访问MCS-51单片机中可寻址的位

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

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

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