FORTH_01_计算机语言基础.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FORTH_01_计算机语言基础

计算机语言基础 任何语言都有一个基础,比如幼儿开始学语言,总要有个开始的语言基础,比如“妈妈”就是常见的第一个名词,“要”是第一个动词,“要 XX”是大人教第一个语言规则。奇怪的是中国的幼儿最喜欢的规则是动词在后面的形式,比如“饭饭 要”和“妈妈 抱”。当然开始的语言基础的范围有多大,对于各种不同目的有不同的定义。 计算机语言有三种类型: (1)人类说给计算机听的; (2)计算机说给计算机听的; (3)计算机说给人类听的; 通常所说的计算机语言是指第1类“人类说给计算机听的”,包括二进制的机器码指令、低级的汇编语言和高级计算机语言,高级计算机语言是人类程序员用来编写程序的语言,例如C语言和JAVA语言。 第2类是计算机说给计算机听的,通常称为计算机协议,比如TCP/IP和HTTP协议。 由于目前的计算机没有主体地位,因此第3类计算机语言目前并没有清晰的思路,但在科幻电影里频频出现,也许会给我们一些借鉴。比如计算机向人类发出灾难和危险的警告信息,目前是由人类编制的计算机程序做出的决定,这应该算人类说给人类听的。但是随着计算机自主学习的理论和人工智能的发展,计算机完全可以自己得到许多知识,也会得出许多结论,这些知识和结论并不是人类事先给定的,如果这时计算机将自己获得的知识和得出的结论告诉人类,应该是第3类。 目前已经出现的各种交互式机器人已经能够用人类的语言回答人类的问题,大家关注的是如何回答的好和回答的妙,人工智能和人机交互的计算机领域正在研究这些问题。但是,机器人对人类应该如何说话,还没有归到计算机语言的角度,比如是用现在卖萌的小屁孩语言,还是用过去的动脑筋爷爷的语言?这应该是个问题。 计算机语言有三种功能: (1)命令:要求对方做某种事情; (2)交流:提供对方各种信息和知识; (3)表达:向对方表达情感、意愿和问题; 通常计算机语言是用于第1种功能,比如要求复制文件或者打开网页的命令和计算机要求输入密码或者验证码的要求。由于我们认为计算机不具备主体地位,因此认为计算机语言不具备第2和第3种功能。比如人类向计算机中(或者很时髦地向“计算机云”里)存入大量的照片、文字、音乐和视频的信息,这些并不是提供给计算机本身的,而是通过计算机提供给使用计算机的人类的! 但是第2和第3种功能是已经存在的,只是尚未将其归结到计算机语言的角度。比如计算机需要将自身的CPU温度和网络访问量等运行信息提供给人类,以便人类对计算机进行控制和进行负荷均衡。比如多台处于热备份的计算机主机之间要交换“心跳”信号来感知互相的状态来决定自己参与地位。这些属于第2种功能。第3种功能的一个例子是向计算机提一个问题,计算机回答你解决问题的方法或者是问题的答案,比如炒菜的方法或者到某地的乘车路线。但是计算机有没有以及懂不懂情感、有没有意愿是两个有争议问题,因此一般将人类向计算机提问题的功能归为头两类。目前计算机会不会向人类提问题,这个问题是个问题。 目前的计算机语言不是人类的计算机语言! 由于现代计算机使用CPU来完成其工作,因此计算机只懂的机器语言:二进制机器码指令。计算机语言的头1类和头1种是人类向计算机发命令让它做事,因此计算机语言也必须让人类懂得,否则无从发布命令,比如从Basic到Java这些高级计算机语言就能让科技人员和程序人员理解。 目前为了将人类理解的计算机语言转化为计算机理解的计算机语言,用高级计算机语言写的程序通常要用一个编译软件进行对其进行编译,然后产生计算机硬件可以运行的计算机指令序列。编译软件通常是由大型软件公司或者集体开源开发的,就象gcc、VC++或者JAVA编译器。 显然计算机理解的计算机语言是CPU硬件生产者的计算机语言,比如Intel制定X86类CPU指令集和ARM公司制定的ARM指令集。 那么高级计算机语言是谁的计算机语言?如果你想让计算机执行你的命令,要想得到正确的计算机指令序列,你必须要用合乎编译器规范的高级计算机语言来编写程序。因此程序员要学习高级计算机语言的语法,要通过各种考试。这些高级计算机语言的本质特征就像工厂制造的机床,大家只能严格地按照说明书去操作它,既不能改变它,也不能升华它。因此高级计算机语言只是“编译器”的计算机语言,不是“你的”计算机语言,甚至不是人类的计算机语言! 人类语言包括两个方面:词汇和语法,语法的规则较少,相对固定,而词汇量巨大,且在不停地发展变化。而目前的高级计算机语言却相反,词汇量(比如C语言的保留字)较少,而规则很多(比如各种语法和编译器的选项),要想掌握高级计算机语言,一般人需要经过专门培训来学习和通过全国计算机等级考试来衡量。 CPU是机械制造的,计算机理解的计算机语言因此死板难懂,与我们人类语言相差巨大是可以理解的。但是人类理解的计算机语言为什么一定要象“编

文档评论(0)

bigone123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档