欢迎来到天天文库
浏览记录
ID:34405460
大小:1.15 MB
页数:30页
时间:2019-03-05
《单片机c语言程序设计new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2010-10-19第四章单片机C语言程序设计主要内容1C51的数据类型2存储器类型3存储模式4绝对地址的访问12010-10-19C语言与MCS-51单片机¢汇编语言考虑:¢存储器结构;¢片内数据存储器与特殊功能寄存器使用;¢按实际地址处理端口数据。¢C语言¢不用像汇编语言那样具体组织、分配存储器资源;C语言与MCS-51单片机¢C语言根据单片机存储结构及内部资源定义数据类型和变量;¢对数据类型与变量的定义,要与单片机存储结构相关联,否则编译器不能正确地映射定位。¢标准C语言程序不需要考虑这些问题
2、;¢C51包含的数据类型、变量存储模式、输入输出处理、函数等方面与标准C语言有一定区别。22010-10-19C51程序结构¢C51程序与标准C程序在以下几个方面不一样:¢(1)C51中定义库函数和标准C语言定义库函数不同。©标准C语言定义库函数是按通用微型计算机来定义的;©C51中库函数是按MCS-51单片机相应情况来定义的;¢(2)C51中数据类型与标准C数据类型也有一定的区别;©在C51中增加了几种针对MCS-51单片机特有数据类型;C51程序结构¢(3)C51变量存储模式与标准C中变量存储模
3、式不一样;©C51中变量存储模式与MCS-51单片机存储器紧密相关;¢(4)C51与标准C的输入输出处理不一样;©C51中输入输出是通过MCS-51串行口来完成的;©输入输出指令执行前必须要对串行口进行初始化;¢(5)C51与标准C在函数使用方面也有一定的区别;©C51中有专门的中断函数。32010-10-194.2C51的数据类型字符型char位类型int整型特殊功能寄存器型long整型指针型float浮点型4.2C51的数据类型¢C51数据类型与标准C中数据类型基本相同;¢C51中还有专门针对于
4、MCS-51单片机的特殊功能寄存器型和位类型。1.字符型char¢signedchar和unsignedchar,默认为signedchar。¢长度均为一个字节,存放一个单字节的数据。¢signedchar,定义带符号字节数据;数值范围是-128~+127;¢unsidhignedchar,存放一个字节的无符号数,其取值范围为02550~255。¢unsignedchar可以用来存放无符号数,也可以存放西文字符;¢一个西文字符占一个字节,在计算机内部用ASCII码存放。42010-10-194.2C
5、51的数据类型2.int整型¢singedintsingedint和unsignedintunsignedint。默认为signedintsignedint。¢长度均为两个字节,用于存放一个双字节数据。¢signedint,存放两字节带符号数,补码表示;¢数的范围为-32768~+32767。¢unsignedint,存放两字节无符号数;¢数的范围为0~65535。4.2C51的数据类型3.long长整型¢singedlongsingedlong和unsignedlongunsignedlong。默
6、认为signedlongsignedlong。¢长度均为四个字节,存放一个四字节数据。¢signedlong,存放四字节带符号数,补码表示;¢数的范围为-2147483648~+2147483647。¢unsignedlong,存放四字节无符号数;¢数的范围为0~4294967295。52010-10-194.2C51的数据类型4.float浮点型¢float型数据长度为四个字节,格式符合IEEE-754标准的单精度浮点型数据,包含指数和尾数两部分;¢最高位为符号位,“1”表示负数,“0”表示正数;
7、¢其次8位为阶码,最后23位为尾数的有效数位;¢尾数的整数部分隐含为“1”,尾数精度为24位。4.2C51的数据类型5.*指针型¢指针型本身就是一个变量,在这个变量中存放的指向另一个数据的地址。62010-10-194.2C51的数据类型6.特殊功能寄存器型¢用于访问MCS-51单片机中的特殊功能寄存器;¢分sfr和sfr16两种类型;¢sfr为字节型特殊功能寄存器类型,占一个内存单元;¢访问MCS-51内部所有特殊功能寄存器;¢sfr16为双字节型特殊功能寄存器类型,占用两个字节单元;¢访问MCS
8、-51内部所有两个字节特殊功能寄存器;¢对特殊功能寄存器访问必须先用sfr或sfr16进行声明。4.2C51的数据类型七.位类型¢访问MCS-51单片机中可寻址的位单元。¢在C51中,支持两种位类型:¢bit型和sbit型。¢它们在内存中都只占一个二进制位;¢其值可以是“1”或“0”。72010-10-194.2C51的数据类型基本数据类型长度取值范围unsignedchar1字节0~255signedchar1字节-128~+127unsignedint2字节0~6
此文档下载收益归作者所有