- 1、本文档共75页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
单片机开发语言及工具的使用第2章
单片机开发人员首要面临的选择是采用什么编程语言及工具进行开发。就开发语言而言,主要有两种类型:汇编语言和高级语言。目前,汇编语言由于编程复杂,难以掌握,维护起来非常困难,已经很少使用,更多的是采用高级语言来编程。目前,针对单片机开发,使用最广泛的高级语言就是C语言,使用本书应具备C语言编程基础知识。本章介绍单片机C51语言的使用方法,同时对编程开发工具软件Keil和单片机运行仿真软件Proteus的使用方法进行介绍。引言
目录单片机C51语言与标准C语言的区别1Keil软件4C51程序实例2本章小结5Proteus软件3本章习题6行业PPT模板/hangye/
2.1单片机C51语言与标准C语言的区别
2.1单片机C51语言与标准C语言的区别单片机C51语言是8051单片机应用开发中最常使用的程序设计语言,它在标准C语言的基础上,针对8051内核硬件的特点进行了扩展,能直接对8051单片机硬件进行操作,既有高级语言易读、开发效率高的优点,又有低级语言执行效率高的优点,已然成为最适合51单片机应用开发的实用高级语言。C51语言在语法规范、程序结构与设计方法上都与标准C语言基本相同,但在库函数、数据类型、变量存储模式等方面与标准C语言存在一些差别。
2.1单片机C51语言与标准C语言的区别(1)库函数有差异。标准C语言的库函数是按通用微型计算机来定义的,C51语言的有些库函数是按照8051单片机的特点来定义的。C51有丰富的可直接调用的库函数,灵活使用库函数可使程序代码简单、结构清晰,并且易于调试和维护。每个库函数都在相应的头文件中给出了函数原型声明,用户如果需要使用库函数,就必须在源程序的开始处用预处理命令“#include”将有关的头文件包含进来。(2)数据类型有区别。针对8051单片机的特点,C51语言在标准C语言的基础上增加了4种数据类型,它们是bit、sfr、sfr16和sbit。(3)变量存储模式不一样。标准C语言最初是为通用计算机设计的,在通用计算机中,只有一个程序和数据统一寻址的内存空间,而C51语言中的变量存储模式与8051单片机的各种存储器紧密相关。(4)数据存储类型不同。8051单片机的存储区可分为内部数据存储区、外部数据存储区和程序存储区。(5)标准C语言没有处理单片机中断的定义,而C51语言中有专门的中断函数。
2.1单片机C51语言与标准C语言的区别任何程序设计都离不开对于数据的处理,一个程序如果没有数据,它就无法工作。数据在计算机内存中的存放情况由数据结构决定,C语言的数据结构是以数据类型出现的,数据类型可分为基本数据类型和复杂数据类型,复杂数据类型由基本数据类型构造而成。C语言中的基本数据类型有char、int、short、long、float和double。对于C51编译器,short与int相同,double与float相同。1.char(字符类型)char有signedchar和unsignedchar之分,默认为signedchar。char类型数据的长度均为1B,用于存放一个单字节数据。对于signedchar类型数据,其字节中的最高位表示该数据的符号,“0”表示正数,“1”表示负数(负数用补码表示),所能表示的数值范围是?128~127。unsignedchar类型数据是无符号字符数据,其字节中的所有位均用来表示数据的数值,所能表示的数值范围是0~255。
2.1单片机C51语言与标准C语言的区别2.int(整型)int有signedint和unsignedint之分,默认为signed类型数据的长度均为2B,用于存放一个双字节数据。signedint类型数据是有符号整数,字节中的最高位表示数据的符号,“0”表示正数,“1”表示负数,所能表示的数值范围是?32768~32767。unsignedint类型数据是无符号整型,所能表示的数值范围是0~65535。3.long(长整型)long有signedlong和unsignedlong之分,默认为signed。long类型数据的长度均为4B。signedlong类型数据是有符号的长整数,字节中的最高位表示数据的符号,“0”表示正数,“1”表示负数,所能表示的数值范围是?2147483648~2147483647。unsignedlong类型数据是无符号整数,所示表示的数值范围是0~4294967295。4.float(浮点型)float类型数据占4B,共32位,包含1位符号位、8位阶码(指数部分),以及23位尾数。它是符合IEEE754标准的单精度浮点型数据,在十进制形式中有7位有效数字。
2.1单片机C51语言与标准C语言的区别5.*(指针型)指针型数据不同于以上4
文档评论(0)