- 22
- 0
- 约3.26万字
- 约 27页
- 2018-05-24 发布于天津
- 举报
第3章单片机KeilC51语言程序设计基础-Read.PDF
3 章 单片机Keil C51 语言程序设计基础
3 章 单片机Keil C51 语言程序设计基础与开发调试
3.1 C 语言与MCS-51 单片机
前面介绍了MCS-51 汇编语言程序设计,汇编语言有执行效率高、速度快、编写的程序
代码短、与硬件结合紧密等特点。尤其在进行I/O 口管理时,使用汇编语言快捷、直观。但
汇编语言比高级语言难度大,可读性差,不便于移植,应用系统设计的周期长,调试和排错
也比较难,开发的时间长。
而 C 语言作为一种高级程序设计语言,在程序设计时相对来说比较容易,支持多种数
据类型,功能丰富,表达能力强,适用灵活方便,应用面广,目标程序效率高,可移植性好,
而且能直接 计算机硬件进行操作。既有高级语言的特点,也具有汇编语言的特点,能够
硬件直接访问,能够按地址方式访问存储器或I/O 端口。现在,采用C 语言编写程序进行单
片机应用系统开发已经成为主流。当然,采用C 语言编写的应用程序必须由单片机的C 语
言编译器转换生成单片机可执行且与汇编一一 应的代码程序。
用 C 语言编写MCS-51 单片机程序与用汇编编写MCS-51 单片机程序不一样,用汇编
语言编写MCS-51 单片机程序必须要考虑其存储器结构,尤其必须考虑其片内数据存储器与
特殊功能寄存器的使用以及按实际地址处理端口数据,用C 语言编写的 MCS-51 单片机应
用程序则不用像汇编语言那样需具体组织、分配存储器资源和处理端口数据。但在C 语言
编程中,对数据类型与变量的定义,必须要与单片机的存储结构相关联,否则编译器不能正
确地映射定位。
用C 语言编写单片机应用程序与标准的C 语言程序也有相应的区别:C 语言编写单片
机应用程序时,需要根据单片机存储结构及内部资源定义相应的数据类型和变量,而标准的
C 语言程序不需要考虑这些问题;C51 包含的数据类型、变量存储模式、输入输出处理、函
数等方面与标准的 C 语言有一定的区别。其他的语法规则、程序结构及程序设计方法等与
标准的C 语言程序设计相同。
现在支持MCS-51 系列单片机的C 语言编译器很多,其中Keil C51 以它的代码紧凑和
使用方便等特点优于其他编译器,应用广泛。本书以Keil C51 编译器介绍MCS-51 单片机C
语言程序设计。和汇编语言一样,其被集成到uVision3 的集成开发环境中,C 语言源程序经
过C51 编译器编译、L51 (或BL51 )连接/定位后生成BIN 和HEX 的目标程序文件。
本章将详细介绍Keil C51,主要介绍其与标准C 不兼容的相关语句,其中,C51 下中断
函数的编写将在中断技术章节讲述。
3.1.1C 语言的特点及程序结构
1 、C 语言的特点
与其他的高级语言相比较,C 语言具有以下特点:
(1)语言简洁、紧凑,使用方便、灵活
C 语言一共只有 32 个关键字,9 种控制语句,程序书写形式自由,与其他高级语言相
比较,程序精练、简短。
(2 )运算符丰富
C 语言包括很多种运算符,总共有34 种,而且把括号、赋值、强制类型转换等都作为
运算符处理。表达式灵活,多样。可以实现各种各样的运算。
(3 )数据结构丰富,具有现代化语言的各种数据结构
C 语言的数据类型有整型、实型、字符型、数组类型、指针类型等。能用来实现各种复杂的
数据结构。
(4 )可进行结构化程序设计
- 1 -
3 章 单片机Keil C51 语言程序设计基础
C 语言具有各种结构化的控制语句,如if else 语句、while 语句、do while 语句、switch case
语句、for 语句等。另外C 语言 程序以函数为模块单位,一个C 语言程序就是由许多个函
数组成,一个函数相当于一个程序模块,因此C 语言程序可以很容易进行结构化程序设计。
(5 )可以直接 计算机硬件进行操作
C 语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以
硬件直接进行操作。
(6 )生成的目标代码质量高,程序执行效率高
众所周知,汇编语言生成的目标代码的效率是最高的,但据统计表明, 于同一个问题,用
您可能关注的文档
最近下载
- 传统基材润湿流平(氟碳硅烷嵌段).pdf VIP
- 南京财经大学2024-2025学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- C4D课程考试试题及参考答案.doc VIP
- 2025年陕西公务员申论考试真题及答案B卷.docx VIP
- [渝粤教育] 西北工业大学 航天器控制原理 mooc 资料.docx VIP
- 航天器控制原理(西北工业大学)中国大学MOOC 慕课 章节测验 期末考试答案.pdf VIP
- 精品解析:2025年陕西省中考数学试题(原卷版).docx VIP
- 四维度主力跟踪.pdf
- 2022年陕西省中考数学真题(原卷版).docx VIP
- 大众网关控制器和bcm车身控制模块针脚定义非常有用.pdf VIP
原创力文档

文档评论(0)