- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《白话 C++》
第一章 程序漫谈?
1.1 硬件、软件、程序
1.2 计算机语言
1.3 语言和实现语言的工具
1.3.1 机器语言
1.3.2 汇编语言
1.3.3 高级语言
1.3.4 语言实现工具
1.3.4.1 C++ Builder的基本功能
1.3.4.2 VCL vs. MFC
1.1 硬件、软件、程序
对于计算机,也许你是老鸟,也许你是菜鸟……
但不管怎样,如果你此时此地你要学习编程,那么你应该多多少少知道点什么叫硬件什么叫软件——反正我不管你懂不懂,为了面子,我很不乐意你问我什么叫硬件什么叫软件——我做在这凳子半个小时了,一直想不出如何给二者下个定义。美国一个电脑神童说:“凡是摔到地上会坏的就是硬件。”我深感不妥,众所周知,如果把硬盘摔到地上,那么硬盘坏了,里头的那些数据——都是软件——也一样地坏得让你我心疼。
倘若按字面上理解,那就更加的矛盾重重:硬盘硬是硬件;软盘软也是硬件。还一种说法是:看得见摸得着的为硬件,看不见摸不着的为软件。刚觉得它说得不错,但马上我就发觉了它的破绽:我现在用的Word2000,它就在屏幕上,界面美观,操作方便……
无奈之下,我搬出金山词霸,它说:“硬件:计算机及其它直接参与数据运算或信息交流的物理设备”。挺好。硬件就是设备。平常我们生活中的各种设备,洗衣机,冰箱,电视,还有螺丝刀,钳子,都是硬件。
软件呢?“软件:控制计算机硬件功能及其运行的指令、例行程序和符号语言”。指令、程序和符号语言是什么且不说,至少我们得知:软件是用来控制硬件的运行的。
这就好办点。我们可以打比方:譬如汽车,其本身自然是硬件,但关于驾驶车的那一套技术,及有关交通规则,我们可称为软件,因为后者控制了前者的运行方式。
(一般不传之秘笈:如果你英语一般,学习编程时,别忘装上金山词霸。并且装上后立即上网升级词霸)
现在来谈“指令、程序、和符号语言”。我想交通方面的“软件”确实就是这些东西。我不会驾车,但曾多次看到警察在我上班坐的班车前用指头一指,就令我们的司机脸色发青。之后,一套既定的处罚程序被执行。很快,听说我们的司机又在学习那些用来表示“单行”、“只许右拐”、“不许停车”、“禁鸣”等奇奇怪怪的符号语言了……
事实上,说软件看不见摸不着其实也正确。因为它们是思想,精神,规则,逻辑。本身是抽象的,确实不可触及。但软件总是要有载体来存放,要有表达或表现方式,这些使得它们变得形象具体起来。在此意义上,说软件是摔在地上坏不了的东西,也相当行得通,神童毕竟是神童。
最后,什么是程序?我决定斗胆来给它下个定义:
程序是一组按照一定的逻辑的进行组合的指令。
因此,在以后的学习过程上,很多时候,我们会觉得程序就是指令;同样很多时候,我们会觉得程序就是逻辑。
当然,更多的时候,我们并不区分程序和软件二者。也许前者更趋于抽象,而后者趋于具体。比如我们在写那些表达我们的思想逻辑时,我们喜欢说“写程序”;而当程序完成,可以待价而沽时,我们称它为软件产品。
1.2 计算机语言
程序用计算机语言写成。编程的实质就是你用计算机语言来表达你解决问题的逻辑。
那么,什么叫计算机语言?
先不必去解释。因为,计算机是机器,机器不是生物,它怎么能有语言?小猫小狗有语言我尚可相信,机器也有语言,还要我们去学习,这似乎有渎人类之尊严。
如果我不把这个结解开,可能部分特别在意人类尊严的学生对学习编程从此产生心理障碍,无法继续学习……
狭义上,我们讲的语言,汉语英语广东话,它是语言,有声音。小鸟之间吱吱喳喳,大抵也是语言。但其实语言二字虽都带口,却不是说非得有声才称为语言:哑语无声,但它也是语言。广义上讲,语言是沟通、交流的一种手段。基于此,我们认为所有的机器或工具,也就包括计算机,都有它们自己的语言。比如锤子,它的语言是敲打;比如螺丝刀,它的语言是拧,如果你非要拧锤子,非要敲打螺丝刀,那么结果就像你用法语和广东佬交谈,用粤语和法国佬说话一样莫名其妙。
一般地,越复杂的机器,人类与其沟通的语言也越复杂。譬如汽车,你想驾驭它,你就必须去驾校参加学习。想一想,开车的时候,我们的确是在和车进行沟通。如果你俩之间的沟通出现差错——你心里右转,手却一个劲向左转方向盘,向机器发出了错误的命令——这将多么可怕!
至此,我们的心理障碍可以消除了。小猫小狗有语言是因为它们聪明,而机器有语言却是因为它们的笨:它们笨,没办法像动物一样可以通过培训来理会人类的意愿,所以,让人类来反过来为它们定一套沟通的规则,然后人自己去学会这些语言,从而可以方便控制机器。
再所以,我们推论,凡是机器语言都是笨笨的语言。机器语言可以分低级语言和高级语言,但无论何
文档评论(0)