- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 1 章
程序设计基础知识
随着科学技术的迅猛发展,计算机技术日新月异,计算机程序设计语言也层出不穷。
那么,什么是程序语言?什么是程序设计?应该学哪一种程序语言?如何进行程序设计?
这些都是程序设计初学者首先遇到的问题,也是程序设计的基本问题、共性问题。
不论是什么样的计算机语言,其程序设计的基本方法是相同的。本书作为程序设计的
入门教材,将以 C 语言程序设计为主线,介绍程序设计的基本概念和基本方法,讲述 C 语
言的语法规则和实用的 C 程序设计技术。作为全书的开篇,本章就程序设计的基本知识作
概括性讨论,首先介绍计算机的工作原理,然后重点介绍算法的概念及特征、设计算法的
方法和策略、流程图的表示和结构化程序设计方法等内容。需要说明的是,有些概念和方
法要随着后续各章的深入学习才会有深刻的理解。
1.1 计算机的工作原理
1.1.1 计算机的指令系统
大家知道,计算机中的存储器是由千千万万个的电子线路单元组成,每个单元有两个
稳定的工作状态 (例如二极管或三极管的截止和导通, 磁性元件的消磁和充磁等) ,分别以
0 和 1 表示,因此计算机存储的信息是以二进制形式存储的。人们要计算机处理信息,就
要给计算机规定一些最基本的操作, 并用 0 和 1 表示这些操作, 这就构成一条一条的指令。
在设计的时候,就给它规定了一套指令,称之为指令系统( instruction set )。不同型号的计
算机,指令系统也不相同。
一条指令由操作码( opcode )和操作数( oprand )两部分构成,例如在 Z80 中有这样
一条指令:
操作码 操作数
操作码 表示加法操作,操作数是 。这条指令的功能是把操作数 与计算机累加器中的数相加,相加的和仍放在累加器中,例如先在累加器中放一
个数 ,执行这条指令的过程如图 1.1 所示。这条指令用十六进制表示为: C6 06 。
1.1.2 计算机的解题过程
计算机解题要由人事先告诉它解题的方法和步骤,一步一步地去执行。如果人们设计
C 语言程序设计
2
的步骤是正确的,计算机就能计算出正确的结果,如果设计的步骤不正确,计算机就不能
计算出正确的结果,甚至没有结果。
图 1.1 执行过程
以极简单的 5+6 为例,它的解题步骤如下:
(1)把数字 5 和 6 送到计算机的内存中存放起来,存储单元都要有一个编号,称为地
址。例如, 43 号地址存放数 5 ,写为 (43) ←5,同样, 44 号地址存放数 6 ,写为 (44) ← 6。
(2 )把数 5 取出来,送到累加器。
(3 )把数 6 取出来,与累加器中的数相加,结果放在累加器中。
(4 )把累加器结果送回到内存的 45 号地址存放起来,即 (45) ← 11。
(5 )把结果输出到打印机或显示器上。
(6 )结束。
这些解题步骤的集合,称之为程序,第( 1)步是数据的输入,第( 5)步是数据的输
出,第( 2 )~( 4 )步是计算机内部的处理,用某种机器指令写出第( 2 )~( 4 )步这一
过程,有如下形式:
存储地址 机器指令
…
00
文档评论(0)