当前位置:首页 » 编程软件 » 编译程序出现的年代是第几代

编译程序出现的年代是第几代

发布时间: 2022-11-30 09:24:45

编译器的历史

20世纪50年代,IBM的John Backus带领一个研究小组对FORTRAN语言及其编译器进行开发。但由于当时人们对编译理论了解不多,开发工作变得既复杂又艰苦。与此同时,Noam Chomsky开始了他对自然语言结构的研究。他的发现最终使得编译器的结构异常简单,甚至还带有了一些自动化。Chomsky的研究导致了根据语言文法的难易程度以及识别它们所需要的算法来对语言分类。正如Chomsky架构(Chomsky Hierarchy),它包括了文法的四个层次:0型文法、1型文法、2型文法和3型文法,且其中的每一个都是其前者的特殊情况。2型文法(或上下文无关文法)被证明是程序设计语言中最有用的,而且今天它已代表着程序设计语言结构的标准方式。分析问题(parsing problem,用于上下文无关文法识别的有效算法)的研究是在60年代和70年代,它相当完善的解决了这个问题。它已是编译原理中的一个标准部分。
有限状态自动机(Finite Automation)和正则表达式(Regular Expression)同上下文无关文法紧密相关,它们与Chomsky的3型文法相对应。对它们的研究与Chomsky的研究几乎同时开始,并且引出了表示程序设计语言的单词的符号方式。
人们接着又深化了生成有效目标代码的方法,这就是最初的编译器,它们被一直使用至今。人们通常将其称为优化技术(Optimization Technique),但因其从未真正地得到过被优化了的目标代码而仅仅改进了它的有效性,因此实际上应称作代码改进技术(Code Improvement Technique)。
当分析问题变得好懂起来时,人们就在开发程序上花费了很大的功夫来研究这一部分的编译器自动构造。这些程序最初被称为编译器的编译器(Compiler-compiler),但更确切地应称为分析程序生成器(Parser Generator),这是因为它们仅仅能够自动处理编译的一部分。这些程序中最着名的是Yacc(Yet Another Compiler-compiler),它是由Steve Johnson在1975年为Unix系统编写的。类似的,有限状态自动机的研究也发展了一种称为扫描程序生成器(Scanner Generator)的工具,Lex(与Yacc同时,由Mike Lesk为Unix系统开发)是这其中的佼佼者。
在20世纪70年代后期和80年代早期,大量的项目都贯注于编译器其它部分的生成自动化,这其中就包括了代码生成。这些尝试并未取得多少成功,这大概是因为操作太复杂而人们又对其不甚了解。
编译器设计最近的发展包括:首先,编译器包括了更加复杂算法的应用程序它用于推断或简化程序中的信息;这又与更为复杂的程序设计语言的发展结合在一起。其中典型的有用于函数语言编译的Hindley-Milner类型检查的统一算法。其次,编译器已越来越成为基于窗口的交互开发环境(Interactive Development Environment,IDE)的一部分,它包括了编辑器、连接程序、调试程序以及项目管理程序。这样的IDE标准并没有多少,但是对标准的窗口环境进行开发已成为方向。另一方面,尽管在编译原理领域进行了大量的研究,但是基本的编译器设计原理在近20年中都没有多大的改变,它正迅速地成为计算机科学课程中的中心环节。
在20世纪90年代,作为GNU项目或其它开放源代码项目标一部分,许多免费编译器和编译器开发工具被开发出来。这些工具可用来编译所有的计算机程序语言。它们中的一些项目被认为是高质量的,而且对现代编译理论感兴趣的人可以很容易的得到它们的免费源代码。
大约在1999年,SGI公布了他们的一个工业化的并行化优化编译器Pro64的源代码,后被全世界多个编译器研究小组用来做研究平台,并命名为Open64。Open64的设计结构好,分析优化全面,是编译器高级研究的理想平台。
编译器相关专业术语: 1. compiler编译器;编译程序 2. on-line compiler 连线编译器 3. precompiler 预编译器 4. serial compiler 串行编译器 5. system-specific compiler 特殊系统编译器 6. Information Presentation Facility Compiler 信息展示设施编译器 7. Compiler Monitor System 编译器监视系统

② 自计算机问世至今已经经历了4个年代,划分时代的主要依据是计算机的

计算机的发展经过的阶段

第一代(1946―1957年)电子管时代。
物理器件:电子管。
运算速度:每秒几千次到几万次。
内存容量:几千个字。
编程语言:用二级制表示的机器语言或助记符表示的汇编语言编写程序。

第二代(1958―1964年)晶体管的时代(出现高级语言)
物理器件:晶体管。
运算速度:每秒几十万次基本运算。
内存容量:扩大到十几万次。
编程语言:出现了FORTRAN、ALGOL-60、COBOL等高级程序设计语言。

第三代(1965―1970年)中小规模集成电路时代(操作系统成熟)。
物理器件:集成电路。
运算速度:每秒几十万到几百万次。
内存容量:64KB~2MB,可靠性等都有进一步提高。
编程语言:操作系统逐步成熟。多处理机、虚拟储存器系统和面向用户的应用然间的发展,大大丰富了计算机软件资源。

第四代(1971至今)大规模、超大规模集成电路(出现网络,使用面日益广泛)。
物理器件:大规模、超大规模集成电路。
运算速度:每秒几百万次甚至上亿次。
内存容量:1MB~64GB,可靠性等都有较大的提高。
编程语言:出现了数据库系统、分布式操作系统,应用软件的开发已逐渐成为一个庞大的现代产业。

新一代计算机―超级计算机(智能计算机器和机器人)。应具有知识表示和推理能力,可以模拟或部分代替人的智能,具有人―机自然通信能力。目前,人们仍在不懈努力,力争有所突破。

(2)编译程序出现的年代是第几代扩展阅读:

运算速度快:

计算机内部电路组成,可以高速准确地完成各种算术运算。当今计算机系统的运算速度已达到每秒万亿次,微机也可达每秒亿次以上,使大量复杂的科学计算问题得以解决。

例如:卫星轨道的计算、大型水坝的计算、24小时天气算需要几年甚至几十年,而在现代社会里,用计算机只需几分钟就可完成。

计算精确度高:

科学技术的发展特别是尖端科学技术的发展,需要高度精确的计算。计算机控制的导弹之所以能准确地击中预定的目标,是与计算机的精确计算分不开的。一般计算机可以有十几位甚至几十位(二进制)有效数字,计算精度可由千分之几到百万分之几,是任何计算工具所望尘莫及的。

逻辑运算能力强:

计算机不仅能进行精确计算,还具有逻辑运算功能,能对信息进行比较和判断。计算机能把参加运算的数据、程序以及中间结果和最后结果保存起来,并能根据判断的结果自动执行下一条指令以供用户随时调用。

存储容量大:

计算机内部的存储器具有记忆特性,可以存储大量的信息,这些信息,不仅包括各类数据信息,还包括加工这些数据的程序。

自动化程度高:

由于计算机具有存储记忆能力和逻辑判断能力,所以人们可以将预先编好的程序组纳入计算机内存,在程序控制下,计算机可以连续、自动地工作,不需要人的干预。

性价比高:

几乎每家每户都会有电脑,越来越普遍化、大众化,21世纪电脑必将成为每家每户不可缺少的电器之一。计算机发展很迅速,有台式的还有笔记本。

③ 计算机发展过程中经历了哪几个时代(年份)所用的电子器件分别是什么

1、第1代:电子管数字机(1946—1958年),硬件方面,逻辑元件采用的是真空电子管,主存储器采用汞延迟线、阴极射线示波管静电存储器、磁鼓、磁芯;外存储器采用的是磁带。软件方面采用的是机器语言、汇编语言。应用领域以军事和科学计算为主。

缺点是体积大、功耗高、可靠性差。速度慢(一般为每秒数千次至数万次)、价格昂贵,但为以后的计算机发展奠定了基础。

2、第2代:晶体管数字机(1958—1964年),软件方面的操作系统、高级语言及其编译程序应用领域以科学计算和事务处理为主,并开始进入工业控制领域。特点是体积缩小、能耗降低、可靠性提高、运算速度提高、性能比第1代计算机有很大的提高。

3、第3代:集成电路数字机(1964—1970年),硬件方面,逻辑元件采用中、小规模集成电路,主存储器仍采用磁芯。软件方面出现了分时操作系统以及结构化、规模化程序设计方法。特点是速度更快,而且可靠性有了显着提高,价格进一步下降,产品走向了通用化、系列化和标准化等

4、第4代:大规模集成电路机(1970年至今),硬件方面,逻辑元件采用大规模和超大规模集成电路(LSI和VLSI)。软件方面出现了数据库管理系统、网络管理系统和面向对象语言等。1971年世界上第一台微处理器在美国硅谷诞生,开创了微型计算机的新时代。

(3)编译程序出现的年代是第几代扩展阅读:

由于集成技术的发展,半导体芯片的集成度更高,每块芯片可容纳数万乃至数百万个晶体管,并且可以把运算器和控制器都集中在一个芯片上、从而出现了微处理器,并且可以用微处理器和大规模、超大规模集成电路组装成微型计算机,就是常说的微电脑或PC机。

微型计算机体积小,价格便宜,使用方便,但它的功能和运算速度已经达到甚至超过了过去的大型计算机。另一方面,利用大规模、超大规模集成电路制造的各种逻辑芯片,已经制成了体积并不很大,但运算速度可达一亿甚至几十亿次的巨型计算机。

④ 汇编语言出现在第几代计算机

汇编语言出现在第二代计算机。

⑤ 按计算机的发展历程,一般可分为几代计算机的分代是以什么为标准分代的

若按计算机所采用的微电子器件的发展,可以将电子计算机分成以下几代。
(1)第一代计算机。第一代是电子管计算机时代(1946~1959年),运算速度慢,内存容量小,使用机器语言和汇编语言编写程序。主要用于军事和科研部门的科学计算。
(2)第二代计算机。第二代是晶体管计算机时代(1959~1964年),其主要特征是采用晶体管作为开关元件,使计算机的可靠性得到提高,而且体积大大缩小,运算速度加快,其外部设备和软件也越来越多,并且高级程序设计语言应运而生。
(3)第三代计算机。第三代计算机是小规模集成电路(Small Scale Integration,SSI)和中规模集成电路(Medium Scale Integration,MSI)计算机时代(1964~1975年),它是以集成电路作为基础元件,这是微电子与计算机技术相结合的一大突破,并且有了操作系统。
(4)第四代计算机。第四代计算机是大规模集成电路(Large Scale Integration,LSI)和超大规模集成电路(Very Large Scale Integration,VLSI)计算机时代(1975~1990年)。
(5)第五代计算机。第五代计算机是超大规模集成电路(Ultra Large Scale Integration,ULSI)计算机时代(1990~2005年),其主要标志有两个:一个是单片集成电路规模达100万个晶体管以上;另一个是超标量技术的成熟和广泛应用。
(6)第六代计算机。第六代计算机(2005年以后)是极大规模集成电路计算机,单片集成电路规模可达一亿到十亿个晶体管。
希赛教育研究生院专家提示:在有些场合,将第四、第五、第六代计算机统称为第四代计算机。

⑥ 编译程序在第几代计算机出现

编译程序在第二代计算机出现。

⑦ 在第一代、第二代、第三代、第四代计算机时期,编写程序时的主要使用的分别是、、、

第一代:单纯的机器语言,就是以“0”和“1”的组合来指定指令和数据,这种语言对人而言,非常容易出错、学习、编写、改动、纠错都很不容易。不过对机器而言,由于机器语言是对机器硬件进行直接访问,所以运行效率非常高(那个时代的电脑按现在标准来讲很原始,运行效率非常高是被迫的“优点”)。
第二代:汇编语言,相对机器语言,已经有简单人类语言来标示指令或者数据,相对容易很多,不过,由这种语言对人而言,依然容易出错、学习、编写、改动、纠错同样不算容易。汇编语言同样可以直接对机器硬件直接访问,运行效率同样非常高。
第三代:高级语言,相对机器语言,高级语言已经有几乎是以人类语言来标示指令或者数据了( 例如各种BASIC(True basic、Qbasic、Virtual Basic等)、C、C++、PASCAL、FORTRAN、JAVA语言等等),重要的是,开发人员使用高级语言已经可以不用考虑特定的硬件特性,即真正实现了"硬件无关",相对容易很多,高级语言对人而言,得益于开发环境的完善(理论上,可以使用高级语言开发更友善界面的高级语言),所以容易学习、编写、改动、纠错也很容易。高级语言不能直接访问机器硬件(需要用编译器“翻译”为机器语言来间接运行),运行效率相比前两代计算机语言就没有那么高了,(幸运的是,现代的电脑硬件对开发人员来讲可以算奢侈,计算机语言运行效率几乎不是开发者要考虑的了)。
第四代:更高级的语言,高级语言进一步发展,就是目前我们都在使用的各种形形色色的计算机·语言了(例如:LISP、Prolog、CLIPS、OpenCyc、Fazzy、动态语言Python、PHP、Ruby、Lua等等。),这一代的计算机语言学习起来更为容易,有大量成熟稳定的函数、子程序、封装对象可以直接引用,模块化构架更为清晰,对硬件的适应性远超于前三代计算机语言,而且这一代计算机语言重要的特点是,已经有一定的“智能化”。
http://..com/question/330085907.html?an=0&si=9

⑧ 在第二代计算机期间(1958-1964)内提出一个重要的系统软件的概念是()

在第二代计算机期间(1958-1964)内提出一个重要的系统软件的概念是操作系统。

操作系统是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。

最初的电脑没有操作系统,人们通过各种按钮来控制计算机,后来出现了汇编语言,操作人员通过有孔的纸带将程序输入电脑进行编译。这些将语言内置的电脑只能由制作人员自己编写程序来运行,不利于程序、设备的共用。为了解决这种问题,就出现了操作系统,这样就很好实现了程序的共用,以及对计算机硬件资源的管理。

从20世纪70年代中期开始出现了计算机操作系统。在美国1976年的时候就研制了DIGITAL RESEARCH软件公司出8位的CP/M操作系统。这个系统允许用户通过控制台的键盘对系统进行控制和管理,其主要功能是对文件信息进行管理,以实现其他设备文件或硬盘文件的自动存取。此后出现的一些8位操作系统多采用CP/M结构。

(8)编译程序出现的年代是第几代扩展阅读:

各代计算机的特点及其变化:

(一)第一代(1949一1956)

特点:电子管计算机体系确立时代,器件采用其空电子管。

基本技术:提出程序存贮方式,采用二进制码,考虑自动运算控制方式,发明变址寄存器,研制各种存贮器,确立程序设计概念等一系列计算机技术基础。

(二)第二代(1956~1962)—1948年发明晶体管。

特点:确立输入输出控制时代,器件采用半导体晶体管。

基本技术:机器稳定性提高。磁芯存贮器和各种辅助存贮器使用更为发展。采用中断观念,主要矛盾逐步转向软设备。

(三)第三代(1962~70年代)

特点:采用集成电路(每个电路片有4一100个门)和软设备系统化时代。

基本技术:以操作系就为中心,进行软备系统化研究,成果之一即为分时系挽的研制,广泛使用小型计算机。

(四)第四代(70年代开始)

特点:采用大面积集成电路(每个电路片有l,000个门以上),毫微秒操作速度及10亿位存贮容量。硬设备和软设备融合时代。

基本技术:硬设备不会有什么革命性的技术发展,所利用的是标准的集成电路技术,只是强调机器在拮构,体制、计算技术的高度利用和程序设计技巧方面有所变化。

(五)第五代

特点:模拟人类视神经控制系扰。称为“视感控器”或“空间电路计算机”。

基本技术:结构与功能和现有计算机概念完全不同,具有模拟——数字混合的机能,本身具有学习机理,能模仿人的视神经电路网工作。

⑨ 请问:世界上计算机分四代,是哪四代第一代,出生在哪年或哪里

计算机发展史(一)
1945年,由美国生产了第一台全自动电子数字计算机“埃尼阿克”(英文缩写词是ENIAC,即Electronic Numerical Integrator and Calculator,中文意思是电子数字积分器和计算器)。它是美国奥伯丁武器试验场为了满足计算弹道需要而研制成的。主要发明人是电气工程师普雷斯波·埃克特(J. Prespen Eckert)和物理学家约翰·莫奇勒博士(John W. Mauchly)。这台计算机1946年2月交付使用,共服役9年。它采用电子管作为计算机的基本元件,每秒可进行5000次加减运算。它使用了18000只电子管,10000只电容,7000只电阻,体积3000立方英尺,占地170平方米,重量30吨,耗电140~150千瓦,是一个名副其实的“庞然大物”。

ENIAC机的问世具有划时代的意义,表明计算机时代的到来,在以后的40多年里,计算机技术发展异常迅速,在人类科技史上还没有一种学科可以与电子计算机的发展速度相提并论。

一、第一代(1946~1958):电子管数字计算机
计算机的逻辑元件采用电子管,主存储器采用汞延迟线、磁鼓、磁芯;外存储器采用磁带;软主要采用机器语言、汇编语言;应用以科学计算为主。其特点是体积大、耗电大、可靠性差、价格昂贵、维修复杂,但它奠定了以后计算机技术的基础。

二、第二代(1958~1964):晶体管数字计算机
晶体管的发明推动了计算机的发展,逻辑元件采用了晶体管以后,计算机的体积大大缩小,耗电减少,可靠性提高,性能比第一代计算机有很大的提高。
主存储器采用磁芯,外存储器已开始使用更先进的磁盘;软件有了很大发展,出现了各种各样的高级语言及其编译程序,还出现了以批处理为主的操作系统,应用以科学计算和各种事务处理为主,并开始用于工业控制。

三、第三代(1964~1971):集成电路数字计算机
20世纪60年代,计算机的逻辑元件采用小、中规模集成电路(SSI、MSI),计算机的体积更小型化、耗电量更少、可靠性更高,性能比第十代计算机又有了很大的提高,这时,小型机也蓬勃发展起来,应用领域日益扩大。
主存储器仍采用磁芯,软件逐渐完善,分时操作系统、会话式语言等多种高级语言都有新的发展。

四、第四代(1971年以后):大规模集成电路数字计算机
计算机的逻辑元件和主存储器都采用了大规模集成电路(LSI)。所谓大规模集成电路是指在单片硅片上集成1000~2000个以上晶体管的集成电路,其集成度比中、小规模的集成电路提高了1~2个以上数量级。这时计算机发展到了微型化、耗电极少、可靠性很高的阶段。大规模集成电路使军事工业、空间技术、原子能技术得到发展,这些领域的蓬勃发展对计算机提出了更高的要求,有力地促进了计算机工业的空前大发展。随着大规模集成电路技术的迅速发展,计算机除了向巨型机方向发展外,还朝着超小型机和微型机方向飞越前进。1971年末,世界上第一台微处理器和微型计算机在美国旧金山南部的硅谷应运而生,它开创了微型计算机的新时代。此后各种各样的微处理器和微型计算机如雨后春笋般地研制出来,潮水般地涌向市场,成为当时首屈一指的畅销品。这种势头直至今天仍然方兴未艾。特别是IBM-PC系列机诞生以后,几乎一统世界微型机市场,各种各样的兼容机也相继问世。

⑩ 计算机的发展经过了几代是怎么划分的

一共经历电子管数字机、晶体管数字机、集成电路数字机、大规模集成电路机四代。主要是从硬件、软件更新来划分。

1、第1代:电子管数字机(1946—1958年)。硬件方面,逻辑元件采用的是真空电子管,主存储器采用汞延迟线、阴极射线示波管静电存储器、磁鼓、磁芯;

外存储器采用的是磁带。软件方面采用的是机器语言、汇编语言。应用领域以军事和科学计算为主。

2、第2代:晶体管数字机(1958—1964年)

硬件方面的操作系统、高级语言及其编译程序应用领域以科学计算和事务处理为主,并开始进入工业控制领域。

3、第3代:集成电路数字机(1964—1970年)

硬件方面,逻辑元件采用中、小规模集成电路(MSI、SSI),主存储器仍采用磁芯。软件方面出现了分时操作系统以及结构化、规模化程序设计方法。

4、第4代:大规模集成电路机(1970年至今)

硬件方面,逻辑元件采用大规模和超大规模集成电路(LSI和VLSI)。软件方面出现了数据库管理系统、网络管理系统和面向对象语言等。1971年世界上第一台微处理器在美国硅谷诞生,开创了微型计算机的新时代。应用领域从科学计算、事务管理、过程控制逐步走向家庭。

(10)编译程序出现的年代是第几代扩展阅读

1、运算速度快:计算机内部电路组成,可以高速准确地完成各种算术运算。当今计算机系统的运算速度已达到每秒万亿次,微机也可达每秒亿次以上,使大量复杂的科学计算问题得以解决。

2、计算精确度高:科学技术的发展特别是尖端科学技术的发展,需要高度精确的计算。计算机控制的导弹之所以能准确地击中预定的目标,是与计算机的精确计算分不开的。

3、逻辑运算能力强:计算机不仅能进行精确计算,还具有逻辑运算功能,能对信息进行比较和判断。计算机能把参加运算的数据、程序以及中间结果和最后结果保存起来,并能根据判断的结果自动执行下一条指令以供用户随时调用。

4、存储容量大:计算机内部的存储器具有记忆特性,可以存储大量的信息,这些信息,不仅包括各类数据信息,还包括加工这些数据的程序。

5、自动化程度高:由于计算机具有存储记忆能力和逻辑判断能力,所以人们可以将预先编好的程序组纳入计算机内存,在程序控制下,计算机可以连续、自动地工作,不需要人的干预。

6、性价比高:几乎每家每户都会有电脑,越来越普遍化、大众化,21世纪电脑必将成为每家每户不可缺少的电器之一。计算机发展很迅速,有台式的还有笔记本。

热点内容
linuxshellif 发布:2024-05-04 17:09:47 浏览:15
算法精英挑战赛 发布:2024-05-04 17:09:08 浏览:738
河南电力公众号绑定密码是多少 发布:2024-05-04 17:08:55 浏览:331
手机上怎么打开压缩文件 发布:2024-05-04 17:03:57 浏览:171
word加密文件如何解密 发布:2024-05-04 17:02:57 浏览:289
php源码本地测试 发布:2024-05-04 16:57:17 浏览:800
c语言编译exe 发布:2024-05-04 16:57:16 浏览:974
国密算法获取 发布:2024-05-04 16:38:24 浏览:70
脚本精灵荒野乱斗 发布:2024-05-04 16:28:33 浏览:520
刚到的笔记本怎么看配置 发布:2024-05-04 16:26:58 浏览:4