- 1、本文档共116页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 程序设计 本章介绍51单片机的 C51高级语言编程,要求读者掌握程序设计的方法。 2.流程图的作用 研制带有一个微型计算机的产品时,科研人员要从硬件和软件两个方面加以考虑。硬件设计主要考虑:CPU与各种外围设备的连接,选用什么样的I/O接口芯片,它们的口地址安排及使能(片选)信号、读/写信号的连接等;软件设计主要考虑怎样用指令来实现解决问题所必须的各种算法和逻辑功能,即编辑出正确的计算机运行程序。在编制程序之前,首先要把所有需要解决的问题研究清楚,并考虑解决问题的步骤,流程图则是行之有效的辅助手段。因为在流程图上集中体现了过程中的各种逻辑关系,层次分明,思路清晰。它将一个复杂的问题分解为一系列较为简单的步骤,从而使问题变得清晰、明确,易解,按此流程图编写程序,就使编程工作变的容易、简单。所以,软件人员深有体会的感到,画出正确的流程图几乎完成了一半软件设计工作。汇编语言编程和高级语言编程都需画流程图。流程图还有助于在程序调试中及时发现问题和寻找错误。有了流程图,可对照流程图来检查程序。只要流程图正确,就很容易找到程序中的逻辑错误,否则,从一个较复杂的程序中寻找错误将是相当困难的。 流程图也是阅读程序的一个辅助工具。阅读别人的程序,要弄清程序中的逻辑关系,搞清编者考虑问题的思路,理解程序中所用的一些算法。而有了流程图以后,可以先看懂它,对整个程序的结构和编者的思路有了全盘的理解,在这个基础上再去读程序,就要容易得多。因此,画好流程图是计算机软件设计中一个重要环节,尤其对初学者来说,可以说是一个不可缺少的一环。 3.流程图中的符号 (1)起始框,形状为 ,用来表示过程的开始和结束。 (2)处理框,形状为 ,用来表示某种处理和运算。 (3)判断框,形状为 ,用来判断并测试某条件是否满足。 (4)流程线,形状为 ,用来表示流程图的路径和方向。 (5)换页连接点,形状为О,当流程图在一页上画不完时,为了确保流程的完整准确,在相应的连接处画上相同的符号,以表示流程图从这里向页外某个地方(出口点)或从本页流程图外某一个地方流入这里(入口点)。 4.5?? C51高级语言编程 C51是一种专为8051单片机设计的高级语言C编译器,支持符合ANSI标准的C语言程序设计,同时针对8051单片机的自身特点做了一些特殊扩展。为了帮助以前惯于使用汇编语言编程的单片机用户尽快掌握C51编程技术,本节对C语言的一些基本知识进行阐述。 4.5.1 标识符与关键字 C语言的标识符是用来标识源程序中某个对象名字的。这些对象可以是函数、变量、常量、数组、数据类型、存储方式、语句等。一个标识符由字符串、数字和下划线等组成,第一个字符必须是字母或下划线。C语言对大小写字母敏感,如“max”与“MAX”是两个完全不同的标识符。程序中标识符的命名应当简洁明了,含义清晰,便于阅读理解,如用标识符“max”表示最大值,用“TIMER0”表示定时器0等。 关键字是一类具有固定名称和特定含义的特殊标识符,有时又称为保留字。在编写C语言源程序时,一般不允许将关键字另作别用,也就是对于标识符的命名不要与关键字相同。与其他计算机语言相比,C语言的关键字是比较少的,ANSI C标准一共规定了32个关键字,附录1按用途列出了ANSI C标准的关键字。 C51编译器除了支持ANSI C标准的关键字之外,还根据8051单片机自身的特点扩展了如附录2所示的关键字。 4.5.2 C51程序设计的基本语法 虽然C语言对语法的限制不太严格,用户在编写程序时有较大的自由度,但采用C语言进行程序设计时,仍需要遵从一定的语法规则。 1. 数据类型 C语言的数据结构是以数据类型出现的,数据类型可分为基本数据型和复杂数据类型,复杂数据类型由基本数据类型构造而成。C语言中的基本数据类型有char、int、short、long、float和double六种。对于C51编译器来说,short类型与int类型相同,double类型与float类型相同。 (1)char:字符类型 它有signed char(带符号数)和unsigned char(无符号数)之分,默认值为singed char。它们的长度均为一个字节,用于存放一个单字节的数据。对于signed char类型数据,字节中的最高位表示该数据的符号,“0”表示正数,“1”表示负数,负数用补码表示,表示范围是-128~127;unsigned char类型数据,其字节中的所有位均用来表示数据
您可能关注的文档
- 第4章-光发送机2探究.ppt
- 第9讲合作博弈论探究.ppt
- 第4章广域网探究.ppt
- 工程测量第三章(角度测量)浅析.ppt
- 第十章陶瓷合成与制备(二)探究.ppt
- 第4章国际货运代理探究.ppt
- 第9讲中和反应及pH探究.ppt
- 第4章过程输入输出通道探究.ppt
- 第十章烃化探究.ppt
- 第4章合成纤维.1探究.ppt
- 数据仓库:Redshift:Redshift与BI工具集成.docx
- 数据仓库:Redshift:数据仓库原理与设计.docx
- 数据仓库:Snowflake:数据仓库成本控制与Snowflake定价策略.docx
- 大数据基础:大数据概述:大数据处理框架MapReduce.docx
- 实时计算:GoogleDataflow服务架构解析.docx
- 分布式存储系统:HDFS与MapReduce集成教程.docx
- 实时计算:Azure Stream Analytics:数据流窗口与聚合操作.docx
- 实时计算:Kafka Streams:Kafka Streams架构与原理.docx
- 实时计算:Kafka Streams:Kafka Streams连接器开发与使用.docx
- 数据仓库:BigQuery:BigQuery数据分区与索引优化.docx
文档评论(0)