ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:175.54KB ,
资源ID:24919660      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24919660.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(程序语言的基本原理.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

程序语言的基本原理.docx

1、程序语言的基本原理程序语言的基本原理 什么是语言 想要理解什么是计算机程序语言,我们有必要探究它当初是究竟如何被发展出来的;而想要理解计算机程序语言是如何发展出来的,最好能够仔细推敲探究一下人类语言在最原始之初是怎么开始的。 人类语言基础 让我们想象一下活在很古早古早以前的人类,他们并没有所谓的语言,也没有文字。他们只能用比手划脚来表达自己的想法。 一个年轻人刚学会打猎。 有一天早上,他第一次自己一个人进到森林里去狩猎。 接近傍晚的时候,这个年轻人慌张地从森林里跑回村子,神情紧张地对着村子里的人们比手画脚。 村民们都不能明白为什么他对鸟会感到如此慌张,又不是没见过鸟。 这年轻人又一阵比手划脚,

2、村民们还是不了解为何他因为老鼠而如此激动,又不是没见过老鼠。这年轻人无法完整表达他在森林里所看到的东西,他很难让村子里的其他人也能知道他所看到的那样东西。 他很懊恼。 于是,隔天一早,他又进森林里打算抓它一只回来给大家看。就在一个山洞里,他终于抓到了一只并带回村子给大家看。 原来是一只像是长了翅膀的老鼠之类的东西 这年轻人他没见过这种动物;村里的人们有许多人也没见过这种动物。当大家看见他抓回来的这只会飞的老鼠,于是就明白了这年轻人昨天想要表达的是什么了。 这东西在飞的时候发出一种、的声音,大家就模仿这声音指着那个长得像老鼠又长了翅膀的东西叫,所以后来这个村落的人只要说蝙蝠,大家就知道是什么意思

3、了。 不同村落的人们有不同的经历,对一些东西的叫法和表达方式也不一样。像有些别的地方的部落把这同样的东西叫做 BAT。也许他们那边当初发现这种会飞的老鼠是发出像这样的声音 . 于是人类就有了各种不同的语言。 后来,人们又学会了画一些符号来代表那些语言,于是就有了文字,然后人与人之间除了可以用发出声音(讲话)来传达讯息以外,还能在树皮、竹板或兽皮上刻划一些符号线条(写字)来表达一个想法或概念。 以上就是人语言的基础。 计算机的语言基础 人能够藉由发出各种不同的声音来表达非常多不同的意思,也能藉由画出许多不同变化的图形与线条来代表那些声音和其中的意义。 根据这个语言基础原理,我们也就可以藉由电来产

4、生各种不同的变化,然后制定每一种变化所代表的含意,如此便能创造出一种电的语言。 然而,一条电线所能表示的讯息就只有没电或有电两种而已;这好像一个人只能用摇头或点头来表达一样。 但是如果有一条以上的电线,就能有更多的不同变化来表示更多的讯息。 只要能用电产生足够的变化来表示各种不同的讯息,我们就可以发展出使用电的讯号表示的语言。然后,我们当然就能创造出辨认这种语言的机器 - 计算机。 让我们用一个黑色方块 来代表没电;用一个白色方块 来表示有电。 如果只有一条电线,就只能有两种不同的变化,只能来表示两种讯息: 假设现在我们有两条电线,就能产生4种变化,于是就可以用来表示4种不同的讯息: 可以把这

5、电子线路想象成是灯泡。代表没电,灯泡不亮;代表有电,灯泡亮。 如果有4条电线用4灯泡来表示,就能产生16种变化组合,可以用来表示16种不同的讯息: 假如有8个呢? 好吧! 让我们再来算算看 哇! 当我们使用8条电线以8个灯泡显示的时候,能产生256种不同的变化,可以用来表示256种不同的讯息。 如果你很有耐心的对照一下这8个灯(电子线路)的256种变化组合,除了能确认它们真的没有重复以外,你还会发现一些东西它们的顺序排列有规律。 右边的4个灯每16个就会重复一次。如果你再更仔细看,就会发现以最右边3个为一组的灯每8个就会重复一次。要是再看仔细点儿,还会发现最右边两个为一组的灯每4个就会重复一次

6、。 那么,如果只保留最右边的1个灯来看看呢? 你会发现就是每两个就重复一次很有意思吧?! 如果你还没看出来,你应该先停下来,把前面那张表好好研究对照一下。如果还是看不出来,建议你去找一张空白纸,遮住左边的灯,然后分别只露出右边1个、2个、3个、4个为一组的灯再看一次,就应该更容易看出它们的规律了。 我们能利用这个规律来制定出让计算机用以表示数量的数字系统,这又是另一个较进阶的分支主题,以后有机会再来更详细的探讨这些。 让我们先回到这篇的主题重点上面。 虽然电只能以没电、有电两种变化来表示仅有的两个讯息,但是当一次使用8条电线,如此便能用来表示256个不同的讯息了。 这不是很妙吗? 根据这种方式

7、就能发展出一套类似人用来沟通的语言了。而且也能设法将这一大堆由有电、没电组成的各种不同讯息存放在能蓄电的电子装置上,这不就类似人使用书写文字或画图来记载数据的方式了吗? 这真是太妙了! 为了沟通方便,我们就用数字1代表有电,数字0来代表没电。 然后再把任何能存放一个0或1的电线或电子装置,或者任何只要能表示有电与没电的一个存放位置叫做1个位,有8个的话就叫做8位。 8位又称为1个字节(Byte),也就是每8个一组 哈! 突然明白了许多东西吗? 非常好。 这个星球上的第一部计算机,就是以这个基本原理创造出来的。 8位能直接产生的变化有256种,但并不表示就只能表示256种不同讯息而已。 想想看,

8、英文字母也只有26个就能拼凑出那么多的英文单字,然后用那些单字就能够表达几近无数的讯息! 而只要8位就有256个字母。以此来发展一套语言是绰绰有余了。 根据以上的原理,计算机就这样被创造出来了。 所以, 实际上计算机所处理的数据就是0与1,也就是前面用表示没电、表示有电的一大串电的讯息。 而所谓几位计算机就是指那部计算机的CPU能一次处理几个位。一部计算机的速度就是看CPU一次能处理几个位,以及每次要花费多久的时间,通常是以每秒几次来计算,而这就是CPU的频率。 由此可知一部计算机的所有硬设备大都是用来处理这些0与1的讯号。RAM事实上就是可用来存放0与1的电子装置,而其他储存装置也是利用磁性

9、(软盘与硬盘)或反光度的不同(光盘)来表示0与1。 很早期以前的计算机真的是用一大堆类似灯泡的东西做出来的,而且真的还以发亮来代表1、不亮来代表0,而这种长得像灯泡的零件就叫做真空管。当时用 真空管来当内存,一个位就要用一支,每一支真空管的体积约是一般打火机的12倍大,这样你就能想象一下早期计算机的体积有多庞大了。 有了一部能辨认0与1的机器之后,接下来就是制订一套用一串串的0与1来表示各种不同定义的规则,而这就是给计算机使用的语言。 用一大串的0与1所直接制订出来的这套语言就叫做机械语言,要一个人记住这种语言的每个字母、单字与文法简直比登天还难,所以在制订 好语言规则并在计算机中设定完成之后

10、,还需要有一份对照表,于是工程师能参考这份对照表来编写文章,这份文章输入计算机之后计算机就会按照文章的指示来做 事,这种文章就被称为程序。而编写这种文章就称为程序设计。 用机械语言来设计程序谈何容易,这会把一个正常人给弄疯掉! 所以聪明的工程师就用机械语言设计了一种翻译程序,让人们可以直接用代码来编写程序,然后再经过翻译程序翻译成计算机的原始语言机械语言。进 行这种翻译的过程就称为组译或编译,而用来执行组译的程序就称为组译程序或编译程序,通常也叫编译程序。 首先发展出来的这种用代码设计程序的方式,就叫汇编语言。发展出汇编语言之后,编写程序就比较不会把人弄得发疯,因为不必再一直翻阅机械语言对照表

11、来写程序。 然而,汇编语言所用的代码仍是不易理解,所以后来就有人发展出越来越像英文的计算机语言,所使用的方式也是设计能转译为机械语言的程序。 程序就是用计算机语言所写出来的文章;程序内容所使用的单字叫做指令;这些指令在计算机语言中的文法就叫语法。 文法即是文字的用法;语法则是指令的用法。 计算机语言的种类 我们已从前述的两篇文中知道了最原始的计算机语言是机械语言,而最接近机械语言的计算机语言则是汇编语言。 以上这两种皆被称为低级语言,而后来发展出比较接近英文的计算机语言称为高级语言。 也就是说,越接近人的语言方式的计算机语言就越高阶;越是接近机械使用的0与1表达方式的计算机语言就越低阶。 由于

12、低级语言是与机械沟通最直接的方式,所以需要的组译过程会较简化与快速,对计算机硬件的控制也较直接,因此能够彻底的发挥计算机的功能,制作出来的程序软件所占用的内存空间也较小。 低级语言的缺点就是程序不容易理解,也不容易编写。 越高阶的语言就越接近人沟通的语言方式,所需要的组译过程就相对的增加复杂度,不过这些组译工作都是由编译程序自动执行的,所以不必太担心。由于越高阶的语言所需要的组译工作越复杂,因此制作成的程序软件所占用的内存空间也相对较大。 高级语言的好处就是编写起来较轻松容易,而且容易阅读与理解。 低级语言 机械语言Machine Language: 机械语言或也称为机器语言,就是前面一直在说

13、明这个以电来表示0或1所制定给计算机直接使用的语言。 机械语言看起来就像这样 汇编语言Assembly Language: 使用机械语言来写程序谈何容易,所以就有了一种组译程序,让人们可以直接用代码来设计程序,再经过组译程序翻译成机械语言让计算机执行。 这种以代码组合方式的语言就是汇编语言。 汇编语言看起来就像这样 B80300 MOV AX,0003CD10 INT 10CD20 INT 20使用像这样的代码组合而成的文章,我们称原始程序,此时计算机还不能够执行,还必须经过组译程序翻译成机械语言。 虽然汇编语言已经比原始的机械语言要方便许多,但仍然是不太容易学习与理解,所以就渐渐发展出越来越

14、多让人能容易学习与理解的高级语言。 高级语言 使用低级语言必须要写上好多好长才能让计算机执行的程序,若使用高级语言则只要简短的几句就可以办到 . 然后组译程序会自动翻译成一大串的机械语言。 编写完成的原始程序必须以编译程序进行组译,成为一个机械语言程序档案(可执行文件)之后,计算机才能执行该程序。 有许多高级语言不但能使用编译程序组译成可执行文件,也可以用一种叫直译器的程序直接执行刚写好的程序。 若不使用直译器就必须在每次组译完成并执行之后,从中发现错误,再修改原始程序,然后再用编译程序进行组译一次。这样的动作必须做好几次,直到程序错误完全排除并能正常执行为止。 原始程序透过直译器执行时,速度

15、会明显减慢许多,但好处就是可以边写程序边修改错误,然后当确定所写的程序可正常执行之后,再用编译程序进行组译,如此可以节省许多程序除错的时间。 以下各种语言的编译程序与直译器,都曾经有过许多种不同的版本,不同版本之间所使用的指令和语法结构都大同小异。 在微软公司发展出图型化操作使用接口的Windows操作系统之后,许多在该操作系统环境下的程序语言版本就因应而生。在此之前的计算机语言则都还是使用MS-DOS操作系统。 这种在Windows操作系统之下所使用的计算机语言通常都会在前面加一个Visual,例如:Visual Basic、Visual C+等等。Visual的意思是:可视化的;形象化的;

16、直观的。 Visual版本的计算机语言,使程序编写比以前MS-DOS版本的计算机语言还要更容易与方便。使用的指令和语法结构与传统MS-DOS版本的计算机语言 类似,主要的不同在于能以可视化的图型工具来制作程序画面,使得传统繁杂的画面设计流程只需要使用鼠标操作就能轻松完成。 BASIC: 这是个最典型的高级语言。 Basic 是Beginners All-purpose Symbolic Instruction Code的缩写,它的完整原文意思是指初学者通用符号脚本。 Basic 刚好正是意为基础;基本的一个英文字。 Basic 使用一般的英文单字作为指令,而且语法也相当容易理解,所以很适合初学

17、计算机的用户。 初学者可以先藉由了解 Basic 的指令和语法结构来练习程序设计的技巧与原则,所以有许多学校或计算机语言教学机构都喜欢以此语言来当做入门教学课程。 可以把 Basic 当成是学习程序设计的入门语言。 Code : * 以下是一个简单的Basic程序例子 *ForI=2to9Step1 ForJ=2to9Step1 PrintI;“*”J;“=”;I*J NextJ NextI这个 Basic 程序 将印(显示)出一个九九表在屏幕上。 FORTRAN: 可以算是第一个被发展出来的高级语言。 FORTRAN是Formula Translation这两个字前面几个英文字母的组合简写,

18、意思是公式转译。由IBM公司在1950年开始发展,于1957年正式推出。 由于FORTRAN在数学方面的运算功能特别好,所以主要用在科学与工程方面。但是由于该语言本身缺乏结构性功能,目前已经很少人使用。 COBOL: COBOL是Common Business Oriented Language的缩写,意思是通用商业语言,由名称就知道这是专门为商业上的应用而设计的计算机语言。 COBOL的语法十分英语化,所以使用 COBOL 编写程序需要记较长的英文单字,但总比记一大堆密密麻麻的0与1要容易得多,指令的格式也十分像叙述句,所以相对于其他的计算机语言,COBOL的程序相当容易阅读与理解。 PAS

19、CAL: Pascal 是十七世纪时代的一位数学家,PASCAL 程序语言以他的姓而命名。 Pascal 是类似 Basic 的一种通用型程序语言,但是比Basic更具有良好的结构性功能,适合于各种不同的应用,使用者可就此发展各式各样的应用软件。 C语言: C 语言是 AT&T 贝尔实验室的两位程序设计师于1970 年所发展出来的,当时他们是为了要设计一种叫UNIX的操作系统而开发出命名为C的多功能计算机程序语言。 UNIX 是一种可供多人同时使用的服务器操作系统,操作方式与古老的MS-DOS相似,都是以文字指令方式操作的;可以将MS-DOS想象成是精简型的UNIX, 不同之处是 DOS 只能

20、提供单人单机始用。现在有许多网页服务器都是使用UNIX或其他被称为 Unix-Like 的其他兼容操作系统(例如: Linux)。 C 语言有一个特点,它本身其实算是是一种高级语言,然而却能做到低级语言的许多功能,再加上直接与汇编语言配合使用,C语言几乎可以用来发展任何型态的软件、做到任何计算机程序的功能,所以有人也称它为中阶语言。 有许多计算机操作系统软件都是以C语言发展出来的。 而且同一个 C 语言的源代码可以拿到不同的计算机系统中用编译程序再进行组译一次就可以用,只需要做很小的修改或甚至不必再修改。因此,目前 C 语言在全世界广泛地受到程序设计师的喜爱,几乎每一种计算机系统都有 C 语言

21、的编译程序。 Windows 版本的 C 语言有:微软公司推出的Visual C+,和 Borland 公司推出的Borland C+。 Delphi: Delphi 是由美国 Borland (现已改名为Inprise) 公司于1995年推出,在Windows系统下使用的一个快速应用程序开发工具,以希腊的一个古都而命名。 Delphi 是由早期 MS-DOS 系统下的 PASCAL 演进发展而来的,透过 Delphi 可开发各种不同层面的应用程序。这一套程序开发工具自1995年3月推出以来,在国外造成相当大的震撼,某国外杂志甚至将其称为Visual Basic杀手。 Delphi 最大的优点

22、在于程序所编译出来的执行档是纯粹的执行档,号称比 Visual Basic 执行速度快510倍,对于热爱 Windows 窗口环境,但却又不满于执行效率的程序设计师而言,除了 Visual Basic、Visual C+ 之外,终于有了另一种选择,爱好 Delphi 这种介于 C 与 Basic 语言的程序设计师也越来越多。数据库程序语言 这种专门用来处理以计算机建立数据文件的数据库程序语言,有许多诸如数据库建立、检索、查阅、删除等功能,可以不必再编写长串程序代码就能以类似选项设定的交谈方式让计算机自动转译程序代码。 这种交谈方式是计算机会提出各种问题让你输入或选择你所需要的设定内容,例如数据

23、域的数目与种类,是文字数据还是数字数据,数据长度是几个字等等。 数据库程序语言比前面那些通用类型的计算机语言还更高阶,使用这种计算机语言来设计数据库管理方面的应用程序最为合适。 以下是较常见的数据库程序语言。 dBase: 这可以说是元老级的数据库语言,从早期的DOS操作系统时期就相当受到程序设计师的喜爱,直到现在的Visual dBase还是相当受欢迎。 dBase 所采用的指令语法非常口语化,使用起来很容易,几个小时的学习就能制作出一个简易的数据库管理程序,例如客户数据管理。 在 Windows 尚未流行的 DOS 时代 (大约是1990年代) 当年许多使用古代 16位 PC 的工商企业与

24、政府机关等团体,以计算机进行自动化数据管理,所使用的程序有大多数都是用 dBase 设计出来的应该软件。 FoxPro: 这是微软公司所推出的数据库程序开发工具软件,有 Macintosh(麦金塔)、UNIX、MS-DOS、Windows 四种操作系统版本,程序开发者在上述任何一种操作系统平台上开发程序,都能很容易地将原始程序移植到不同操作系统的计算机上面执行。 Windows 版本的 FoxPro 加入可视化图型操作接口,称为 Visual FoxPro。 FoxPro 是属于交谈式的程序语言,使用者下达命令之后,由 FoxPro 直译器转换成处理数据库的动作,然后储存成档案,便能成为数据库

25、的管理程序。 FoxPro 所提供的项目管理程序,能让用户将程序编译成独立可执行的执行档,而不需要先执行FoxPro软件就能独立执行。 SQL SQL是Structured Query Language的缩写,意思是结构化查询语言,由 IBM 公司在 1970 年所发展出来,用在关系型索引数据库当中的一种数据库查询语言。 利用 SQL 可以定义数据库的结构、指定数据库表格,以及字段型态与长度、新增数据、修改数据、删除数据、查询数据,以及建立各式复杂的表格关连。 透过这种结构化查询语言,可省去许多设计长串繁杂程序代码的时间。目前的数据库系统,如 Visual FoxPro、Visual dBAS

26、E,甚至 Visual Basic 等语言,都提供了 SQL 语言的功能。网页应用程序语言 也有专门应用在动态产生网页信息的程序语言。 HTML: HTML 是HyperText Markup Language的简写,意思是超文本卷标语言。 这种语言不需要经过编译程序的组译过程,而是以网页浏览器程序直译执行,所显示出来的结果即是一页页图文并茂的网页。 HTML 与 一般的程序语言非常不同,它的内容实际上是纯文本文件,加入许多代表不同功能的卷标来产生文字的字体、字型、颜色等不同变化;网页上的图型也是以加入具有显示图片功能的卷标方式编写的,除此之外还有播放音乐、重复动作之动态图等功能的各种卷标。

27、这里有个HTML语法的例子: 大家好!我是初学者 是指定红色的6倍大字体卷标 大家好! 是要在浏览器上显示的文字 是指定该卷标的功能到此结束 这行HTML卷标会产生一个显示红色6倍大的大家好!,接着后面是显示我是初学者的黑色小字。 大家好! 我是初学者 HTML 的网页显示功能很有限,所以有了其他辅助性的语言,用来与HTML搭配产生能与用户互动的动态网页。 以下是用以辅助HTML的各种语言。 Java Script: Java 是以爪哇产的咖啡而命名,Script则是剧本的意思。可以想象用这种脚本所写的文章,其实就是要求网页浏览器依照指示做出表演的剧本。 Java Script 所使用的指令语

28、法类似 Basic,然而却是内嵌在 HTML 文件里运作,它能让网页内容、图型、颜色、位置随时依程序内容指示而更动,而这是仅用HTML的网页无法做到的。 JAVA: 由美国升扬公司的两位工程师所开发出来的,原本的目的是为了开发在一般电子设备产品上所使用的新程序语言,并不是专为网页设计而发展出来的。 由于JAVA能在各式各样不同计算机系统上执行,这种特性很适合需要在各种不同操作系统上显示的超文本文件网页,所以后来JAVA语言就逐渐在WWW被广泛地应用起来。 JAVA是类似C的一种语言,也是需要经过编译程序进行转译,不过并不是转译为可以让计算机直接执行的机械语言,而是译成一种透过网页浏览器直译执行的程序语言。 网页所使用的 Java 应用程序称为 Java Applet是个独立的程序档案,由浏览器从服务器下载回来后执行,这与内嵌于HTML 文件中的JavaScript是完全不同的两种语言。 交互式网页语言: 除了以上这些以外,还有许多种专门使用在利用网页来与全世界各地用户进行双向信息互动的各种程序语言。 与直接由浏览器执行的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1