分享

51单片机C语言与程序设计

 新用户18032422 2023-10-19 发布于江西

一、程序的概念
在计算机诞生之前,就有了“程序”的概念。根据《现代汉语词典》的解释,所谓“程序”就是事情进行的先后次序,如日常说的“工作程序”“会议程序”等。本书所讲的程序是计算机程序。什么是计算机程序?

图片

一、让算机程序”是让计算机完成某项特定任务,而编制的一组指示计算机工作的指令。计算机就像一个优秀的“土兵”,他无条件服从长官(程序编写者)的命令,为了完成一项军事任务,“长官”下达的一系列命令就是“程序”。
程序可以简单,也可以复杂,简单的程序只有几条指令,而复杂的程序多达百万条指令。

任务的规模越大,内容越复杂,所需要的程序指令就越多,程序的结构也就越复杂。仅一个Windows操作系统就有几千万条指令代码,所以给计算机下命令已不是一两个“长官”的事了,而是团队集体智慧的结晶。

图片

为了有效地指挥计算机工作,不发混乱的“命令”,不发错误的“命令”,就需要开展程序设计工作。程序设计(Programming)是指设计、编制、调试程序的方法和过程。

程序设计是目标明确的智力活动,它要求编写程序的人员首先对需要完成的任务有一个比较清晰的认识,然后按照计算机可以识别的方式来组织这些指令以形成程序,最后将程序提交给计算机去执行,从而完成预定任务。

由于任务的复杂性和多样性,程序设计工作也不可能一蹴而就,需要在设计过程中不断地修改和完善,最终满足任务的需求,这就是程序的调试和测试过程。

图片

二、计算机语言
计算机程序可以用多种语言编写,这些语言有的能够被计算机直接理解、执行,有的需要经过编译后才能被让算机理解、执行,在计算机的发展史上,人们曾经提出过上千种程序设计语言,今天常用的语言也有上百种。

计算机语言经历了几个发展阶段:
1.机器语言
机器语言能够被计算机直接理解,执行。一台计算机能够直接理解、执行的仅仅是它自己的机器语言,不同的计算机拥有不同的机器语言。所以我们说,机器语言是与机器相关的。机器语言是由计算机体系结构设计者定义,并据此设计与实现计算机硬件的功能。

计算机工作基于二进制,从根本上说,计算机只能识别和接受由-和1组成的指令,机器语言是一些由二进制数码0和1组成的数字串。

图片
2.汇编语言

显然,机器语言与人们习惯用的语言差别太大,难学、难写、难记、难检查、难修改,难以推广使用,所以早期的程序员尝试着用英语风格的缩写代替数字串来表示计算机的基本操作。

这样,这些缩写词就构成了汇编语言的基础。相应地,能够将汇编语言源程序转化成机器语言程序的翻译程序也被开发出来,并被称为汇编程序

当然这样的程序要想在计算机上运行还需要经过汇编程序的翻译。借助于汇编语言,计算机的应用得到迅速的发展。这时程序员开始发现即便是完成一个很简单的任务,也需要编写很多条汇编指令。

图片

3.高级语言
为了克服低级语言的缺点,人们于20世纪50年代创造出第一个计算机高级语言FOR-TRAN语言。它很接近于人们习惯使用的自然语言和数学语言。程序中用到的语句和指令是用英文单词表示的,程序中所用的运算符和运算表达式和人们日常所用的数学式子差不多,很容易理解。程序运行的结果用英文和数字输出,十分方便。

高级语言源程序在计算机上运行需要被翻译成机器语言,这个翻译程序被称为编译器,被转换为机器指令的程序称为目标程序。今天,绝大多数程序都是采用高级语言编写的。

二、C语言的优点
C语言简洁、紧凑,使用方便、灵活。C语言一共只有37个关键字、9种控制语句,程序书写形式自由,主要用小写字母表示,压缩不必要的成分。C语言程序比其他许多高级语言简练,源程序短,因此程序输入时工作量少。图片

实际上,C语言是一个很小的内核语言,只包括极少的与硬件有关的成分,语言不直接提供输入和输出语句、有关文件操作的语句和动态内存管理的语句等,C语言的编译系统相当简洁。

运算符丰富、数据类型丰富。具有结构化的控制语句。C语言用函数作为程序的模块单位,便于实现程序的模块化。语言是完全模块化和结构化的语言。

C语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。因此C语言既具有高级语言的功能,又具有低级语言的许多功能,可用系就软件、C语言的这种双重性,使它既是成功的系统描述语言,又是通用的程序设计语言。图片

用C语言编写的程序可移植性好由于C语言的编译系统相当简洁,因此很容易移植到新的系统。而且C语言编译系统在新的系统上运行时,可以直接编译“标准链接库”中的大部分功能,不需要修改源代码,因为标准链接库是用可移植的C语言写的。

因此,几乎在所有的计算机系统中都可以使用C语言。对C语言以上的特点,待学完C语言以后再回顾一下,就会有比较深的体会。

三、C语言结构
一个C-语言源程序可以由一个或多个源文件组成。每个源文件可由一个或多个函数组成。函数是程的主要组成部分。程序的几乎全部工作是由各个函数分别完成的,函数是C程序的本单位,在设计良好的程序中,每个函数都用来实现一个或几个特定的功能。

一个源程序不论由多少个文件组成,都有且有一个main函数,即主函数。不论main函数处在整个程序中的什么位置,程序总是从main函数开始执行的。图片

源程序中可以有预处理命令(include命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。每一个数据声明和语句都必须以分号结尾。标识符、关键字之间必须至少加一个空格以示间隔。

C语言字符集由字母、数字、空白符、标点和特殊字符组成。在字符堂量、字符串常量和注程中,可以使用汉字或其他可表示的图形符号。

为了进一步说明C语言源程序结构的特点,先看以下几个程序。这几个程序由简到难,表现了C语言源程序在组成结构上的特点。虽然有关内容还未介绍,但我们可从这些例子中了解到一个C源程序的基本组成部分和书写格式。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多