老约翰编译器
‘壹’ 什么是Lucifer
堕落天使
路西法
Lucifer 是拉丁词从二个词被获得, 勒克斯 (光; 所有格 lucis) 和 ferre (负担, 带来), 意味 光持票人。Lucifer 没出现在希腊或罗马神话方面; 它由诗人使用代表晨星在片刻当"金星" 会闯入分散女神的成像。"Lucifer" 是Jerome 的直接翻译在他的 Vulgate (第4 个世纪) Septuagint 的希腊翻译, 作为 heosphoros, "晨星", 逐字地"黎明的bringer", 一个词组在 最初没有意欲在Satan 的参考的艾赛尔(参见下面) 。在基督教, Lucifer 变得同义字与Satan, 然而。
现代天文学家辨认行星金星象由命名Lucifer 为人所知在罗马占星术方面在基于其当前的名字之前。参见诗的事例下面。
Lucifer 并且是一个神在巫毒教宗教。
"Lucifer" 和西伯来圣经
"Lucifer" 由Jerome 使用在 Vulgate (第4 个世纪) 翻译成拉丁艾赛尔14:12-14, 西伯来文本提到 helel 本shachar 的地方 () 。 Helel 符号化行星金星, 并且 本shachar 意味"精采一个, 早晨的儿子", 对神话命运巴比伦国王被比较在预言远见。 犹太网络全书 报道, "它是显然的先知在归因于巴比伦国王傲慢的自豪感, 秋天随之, 从一个普遍的传奇借用了想法和晨星有关" 。艾赛尔14 开始在讨论巴比伦的国王, 和参考"晨星, 黎明的儿子之外" 向那位国王的自豪感具体地最初被申请,:
14:4, thou shalt 占去这寓言反对巴比伦的国王, 和言, 怎么hath 压迫者停止了! 金黄城市停止! 。
14:10 全部他们将回答并且说thee, 艺术thou 并且变得微弱作为我们? 艺术thou 变成象我们?
14:11 Thy 盛况减少给Sheol, 和thy viols 噪声: 蠕虫被传播在thee 之下, 并且蠕虫控制thee 。
14:12 怎么艺术thou 下跌从天堂, O 天星, 早晨的儿子! 怎么艺术thou 裁减了对地面, 那didst 静待国家!
(艾赛尔, 美国标准版本)
犹太网络全书的编译器注意到, 艾赛尔画在某些星神话知交对他的听者为他通过的图象, 并且他们建议与Pha5eton 希腊星神话的比较, 遭受了为他的 过分骄傲。
最新犹太传统, 早期教会父亲是熟悉, 详尽阐述在天使的秋天在Samhazai ("天堂seizer") 并且Azael (Enoch, 书的领导下vi.6f) 。其它传奇在midrash 代表repentent Samhazai 暂停的star-like 在天堂和地球之间代替用力投掷下来对Sheol 。Helel-Lucifer 神话BC 转移了到Satan 在第1 个世纪, 和愿是博学的从 Vita ·Ad□.. Ev格$$#10366 $$+0>(12), 敌人报告亚当他早期的事业的地方, 并且Slavonic 书Enoch (xxix. 4, xxxi 。4), Satan-Sataniel 的地方(Samael?) 并且被描述作为一前archangel 。由于他比云彩策划"使他的王位高级在地球和类似' 我的力量' 在上流", Satan-Sataniel 下来用力了投掷, 以他的天使的主人, 并且他连续地从那以后飞行在大气在深渊之上。
"Lucifer" 在罗马诗歌
"Lucifer" 是一个诗名字对于"晨星", 希腊eosphoros 的一个密切翻译 , "黎明bringer", 出现在 冒险旅行 和在Hesiod 的 Theogony 。
对"Lucifer 的" 一个经典罗马用途出现在Virgil 的 Georgics (III, 324-5):
' ' Luciferi primo 附带sidere frigida rura
carpamus, m 鬃毛novum, m gramina canent"
"让我们催促, 当晨星首先出现,
对凉快的牧场地, 然而天是新的, 然而草是满地露水的"
并且相似地, 在Ovid:
极光, 注意在变红黎明, 宽投掷了她的绯红色门和上升填补了大厅; 星采取了飞行, 在被整理的次序由Lucifer 设置, 左他的驻地为时。"
(变形)
一位更加过分的诗人, 象Statius, 能扩展这trope 入一个简要但大方讽喻, 虽然这仍然是光持票人的一个诗的拟人, 不是神话:
"并且现在极光, 上升从她的Mygdonian 休息地方驱散了冷的阴影从高天堂, 并且震动露水下落从她的头发深深脸红了在太阳的追求射线; 往她通过云彩玫瑰色Lucifer 变成他的末期火, 并且以缓慢的马留下一个外籍人世界, 直到火热的父亲的天体充分被重新补充并且他禁止他的姐妹强占他的光芒。"
Statius, Thed 2.134
Lucifer 在基督徒传统
Jerome, 以Septuagint 手边和对异教的诗传统的一般熟悉, 翻译了 Helel 作为"Lucifer" 。基督徒传统并且画在揭示12:5 ( "他的解释下来被投掷了, 那条古老蛇"; 参见12:7 和12:100) 在视同古老蛇神与蛇在伊甸园里和下跌的星, Lucifer, 与Satan 。相应Tertullian (Marrionem, v. 11, 17), Origen (Ezekiel 歌剧, III 。356), 和其他人, 辨认Lucifer 与Satan 。
超自然的秋天的描述
"整天我不顾一切地久运载了得, 并且在日落我跌倒了在Lemnos, 和但一点生活是在我"
关系Hephaestus 的秋天从Olympus 在荷马的 伊利亚特里 I:591ff, 但它由Christian 作者得出了装饰Lucifer 的秋天。
在充分发展的基督徒解释, Jerome 的 艾赛尔的 Vulgate 翻译14:12 做了Lucifer 名字主要下跌的天使, 必须哀叹他原始的荣耀损失作为晨星。这个图象最后定义Lucifer 字符; 那里教会父亲主张 lucifer 不是恶魔的固有名称, 并且它相当提到了他下跌了的州; St. Jerome 变换了它成Satan 的固有名称。
它是显着的, 旧约实际上不在任何观点提及Satan 的叛乱和秋天直接地。这非Scriptural 信仰聚集从不同的段落的解释, 会属于标题基督徒神话, 除了基督徒神话的想法广泛被攻击作为攻势。为关于"战争在天堂" 题材的详细的讨论, 看下跌的天使。
在 Vulgate, 词 lucifer 在别处被使用: 它描述晨星(行星金星), 早晨的"光" (工作 11:17); 黄道带"(工作38:32) 并且" 极光的"" 标志(赞美诗 109:3) 。除在巴比伦的国王的艾赛尔的参考之外, "lucifer" 向"Onias 的西蒙儿子" 被应用(Ecclesiasticus 50:6) 。在新约, Vulgate 翻译"天堂" (在启示2:23 ) 并且"耶稣·基督" 荣耀(在II 彼得1:19; 启示22:16) 以"lucifer" 。( 这些参考需要检查)
文学
"更好统治在地狱比服务在Heav'n 。" -天堂丢失了, 书I, 292
Lucifer 是一个关键主演在约翰·Milton 的新教徒史诗, 天堂丢失。Milton 几乎富有同情心地显示Lucifer, 雄心勃勃并且违抗上帝并且薪水打仗在天堂的prideful 天使, 只有被击败和塑像下来。Lucifer 必须然后使用他的修辞能力组织地狱; 他由Mammon 和Beelzebub 帮助。以后, Lucifer 进入伊甸园, 他成功地诱惑伊芙, 亚当妻子, 吃果子从知识树好和邪恶。
‘贰’ 电脑是什么呀
电脑就是计算机
电子计算机是一种根据一系列指令来对数据进行处理的机器。所相关的技术研究叫计算机科学,由数据为核心的研究称信息技术。
计算机种类繁多。实际来看,计算机总体上是处理信息的工具。根据图灵机理论,一部具有最基本功能的计算机应当能够完成任何其它计算机能做的事情。因此,只要不考虑时间和存储因素,从个人数码助理(PDA)到超级计算机都应该可以完成同样的作业。即是说,即使是设计完全相同的计算机,只要经过相应改装,就应该可以被用于从公司薪金管理到无人驾驶飞船操控在内的各种任务。由于科技的飞速进步,下一代计算机总是在性能上能够显着地超过其前一代,这一现象有时被称作“摩尔定律”。
计算机在组成上形式不一。早期计算机的体积足有一间房屋大小,而今天某些嵌入式计算机可能比一副扑克牌还小。当然,即使在今天,依然有大量体积庞大的巨型计算机为特别的科学计算或面向大型组织的事务处理需求服务。比较小的,为个人应用而设计的计算机称为微型计算机,简称微机。我们今天在日常使用“计算机”一词时通常也是指此。不过,现在计算机最为普遍的应用形式却是嵌入式的。嵌入式计算机通常相对简单,体积小,并被用来控制其它设备—无论是飞机,工业机器人还是数码相机。
上述对于电子计算机的定义包括了许多能计算或是只有有限功能的特定用途的设备。然而当说到现代的电子计算机,其最重要的特征是,只要给予正确的指示,任何一台电子计算机都可以模拟其他任何计算机的行为(只受限于电子计算机本身的存储容量和执行的速度)。据此,现代电子计算机相对于早期的电子计算机也被称为通用型电子计算机。
历史
ENIAC是电脑发展史上的一个里程碑本来,计算机的英文原词“computer”是指从事数据计算的人。而他们往往都需要借助某些机械计算设备或模拟计算机。这些早期计算设备的祖先包括有算盘,以及可以追溯到公元前87年的被古希腊人用于计算行星移动的安提基特拉机制。随着中世纪末期欧洲数学与工程学的再次繁荣,1623年由Wilhelm Schickard率先研制出了欧洲第一台计算设备,这是一个能进行六位以内数加减法,并能通过铃声输出答案的“计算钟”。使用转动齿轮来进行操作。
1642年法国数学家Pascal 在WILLIAM Oughtred计算尺的基础上,将计算尺加以改进,能进行八位计算。还卖出了许多制品,成为当时一种时髦的商品。
1801年,Joseph Marie Jacquard对织布机的设计进行了改进,其中他使用了一系列打孔的纸卡片来作为编织复杂图案的程序。Jacquard式织布机,尽管并不被认为是一台真正的计算机,但是它的出现确实是现代计算机发展过程中重要的一步。
查尔斯・巴比奇(Charles Babbage)是构想和设计一台完全可编程计算机的第一人,当时是1820年。但由于技术条件,经费限制,以及无法忍耐对设计不停的修补,这台计算机在他有生之年始终未能问世。约到19世纪晚期,许多后来被证明对计算机科学有着重大意义的技术相继出现,包括打孔卡片以及真空管。Hermann Hollerith设计了一台制表用的机器,就实现了应用打孔卡片的大规模自动数据处理。
在20世纪前半叶,为了迎合科学计算的需要,许许多多单一用途的并不断深化复杂的模拟计算机被研制出来。这些计算机都是用它们所针对的特定问题的机械或电子模型作为计算基础。20世纪三四十年代,计算机的性能逐渐强大并且通用性得到提升,现代计算机的关键特色被不断地加入进来。
1937年由克劳德·艾尔伍德·香农(Claude Shannon)发表了他的伟大论文《对继电器和开关电路中的符号分析》,文中首次提及数字电子技术的应用。他向人们展示了如何使用开关来实现逻辑和数学运算。此后,他通过研究Vannevar Bush的微分模拟器进一步巩固了他的想法。这是一个标志着二进制电子电路设计和逻辑门应用开始的重要时刻,而作为这些关键思想诞生的先驱,应当包括:Almon Strowger,他为一个含有逻辑门电路的设备申请了专利;尼古拉・特斯拉(Nikola Tesla),他早在1898年就曾申请含有逻辑门的电路设备;Lee De Forest,于1907年他用真空管代替了继电器。
Commodore公司在20世纪八十年代生产的Amiga 500电脑沿着这样一条上下求索的漫漫长途去定义所谓的“第一台电子计算机”可谓相当困难。1941年5月12日,Konrad Zuse完成了他的机电共享设备“Z3”,这是第一台具有自动二进制数学计算特色以及可行的编程功能的计算机,但还不是“电子”计算机。此外,其他值得注意的成就主要有:1941年夏天诞生的阿塔纳索夫-贝瑞计算机是世界上第一台电子计算机,它使用了真空管计算器,二进制数值,可复用内存;在英国于1943年被展示的神秘的巨像计算机(Colossus computer),尽管编程能力极其有限,但是它的的确确告诉了人们使用真空管既值得信赖又能实现电气化的再编程;哈佛大学的Harvard Mark I;以及基于二进制的“埃尼阿克”(ENIAC,1944年),这是第一台通用意图的计算机,但由于其结构设计不够弹性化,导致对它的每一次再编程都意味着电气物理线路的再连接。
开发埃尼爱克的小组针对其缺陷又进一步完善了设计,并最终呈现出今天我们所熟知的冯·诺伊曼结构(程序存储体系结构)。这个体系是当今所有计算机的基础。20世纪40年代中晚期,大批基于此一体系的计算机开始被研制,其中以英国最早。尽管第一台研制完成并投入运转的是“小规模实验机”(Small-Scale Experimental Machine,SSEM),但真正被开发出来的实用机很可能是EDSAC。
在整个20世纪50年代,真空管计算机居于统治地位。1958年 9月12日 在Robert Noyce(INTEL公司的创始人)的领导下,发明了集成电路。不久又推出了微处理器。1959年到1964年间设计的计算机一般被称为第二代计算机。
到了60年代,晶体管计算机将其取而代之。晶体管体积更小,速度更快,价格更加低廉,性能更加可靠,这使得它们可以被商品化生产。1964年到1972年的计算机一般被称为第三代计算机。大量使用集成电路,典型的机型是IBM360系列。
到了70年代,集成电路技术的引入极大地降低了计算机生产成本,计算机也从此开始走向千家万户。1972年以后的计算机习惯上被称为第四代计算机。基于大规模集成电路,及后来的超大规模集成电路。1972年4月1日 INTEL推出8008微处理器。1976年Stephen Wozinak和Stephen Jobs创办苹果计算机公司。并推出其Apple I 计算机。1977年5月 Apple II 型计算机发布。1979年6月1日 INTEL发布了8位元的8088微处理器。
1982年,微电脑开始普及,大量进入学校和家庭。1982年1月Commodore 64计算机发布,价格:595美元。 1982 年2月80286发布。时钟频率提高到20MHz,并增加了保护模式,可访问16M内存。支持1GB以上的虚拟内存。每秒执行270万条指令,集成了134000个晶体管。
1990年11月: 第一代MPC (多媒体个人电脑标准)发布。处理器至少80286/12MHz,后来增加到80386SX/16 MHz ,及一个光驱,至少150 KB/sec的传输率。1994年10月10日 Intel 发布75 MHz Pentium处理器。1995年11月1日Pentium Pro发布。主频可达200 MHz ,每秒钟完成4.4亿条指令,集成了550万个晶体管。1997年1月8日Intel发布Pentium MMX。对游戏和多媒体功能进行了增强。
此后计算机的变化日新月异,1965年发表的摩尔定律发表不断被应证,预测在未来10~15年仍依然适用。
原理
个人电脑的主要结构:
显示器
主板
CPU (中央处理器)
主要储存器 (内存)
扩充卡
电源供应器
光驱
次要储存器 (硬盘)
键盘
鼠标
尽管计算机技术自20世纪40年代第一台电子通用计算机诞生以来以来有了令人目眩的飞速发展,但是今天计算机仍然基本上采用的是存储程序结构,即冯·诺伊曼结构。这个结构实现了实用化的通用计算机。
存储程序结构间将一台计算机描述成四个主要部分:算术逻辑单元(ALU),控制电路,存储器,以及输入输出设备(I/O)。这些部件通过一组一组的排线连接(特别地,当一组线被用于多种不同意图的数据传输时又被称为总线),并且由一个时钟来驱动(当然某些其他事件也可能驱动控制电路)。
概念上讲,一部计算机的存储器可以被视为一组“细胞”单元。每一个“细胞”都有一个编号,称为地址;又都可以存储一个较小的定长信息。这个信息既可以是指令(告诉计算机去做什么),也可以是数据(指令的处理对象)。原则上,每一个“细胞”都是可以存储二者之任一的。
算术逻辑单元(ALU)可以被称作计算机的大脑。它可以做两类运算:第一类是算术运算,比如对两个数字进行加减法。算术运算部件的功能在ALU中是十分有限的,事实上,一些ALU根本不支持电路级的乘法和除法运算(由是使用者只能通过编程进行乘除法运算)。第二类是比较运算,即给定两个数,ALU对其进行比较以确定哪个更大一些。
输入输出系统是计算机从外部世界接收信息和向外部世界反馈运算结果的手段。对于一台标准的个人电脑,输入设备主要有键盘和鼠标,输出设备则是显示器,打印机以及其他许多后文将要讨论的可连接到计算机上的I/O设备。
控制系统将以上计算机各部分联系起来。它的功能是从存储器和输入输出设备中读取指令和数据,对指令进行解码,并向ALU交付符合指令要求的正确输入,告知ALU对这些数据做哪些运算并将结果数据返回到何处。控制系统中一个重要组件就是一个用来保持跟踪当前指令所在地址的计数器。通常这个计数器随着指令的执行而累加,但有时如果指令指示进行跳转则不依此规则。
20世纪80年代以来ALU和控制单元(二者合成中央处理器,CPU)逐渐被整合到一块集成电路上,称作微处理器。这类计算机的工作模式十分直观:在一个时钟周期内,计算机先从存储器中获取指令和数据,然后执行指令,存储数据,再获取下一条指令。这个过程被反复执行,直至得到一个终止指令。
由控制器解释,运算器执行的指令集是一个精心定义的数目十分有限的简单指令集合。一般可以分为四类:1)、数据移动(如:将一个数值从存储单元A拷贝到存储单元B)2)、数逻运算(如:计算存储单元A与存储单元B之和,结果返回存储单元C)3)、条件验证(如:如果存储单元A内数值为100,则下一条指令地址为存储单元F)4)、指令序列改易(如:下一条指令地址为存储单元F)
指令如同数据一样在计算机内部是以二进制来表示的。比如说,10110000就是一条Intel x86系列微处理器的拷贝指令代码。某一个计算机所支持的指令集就是该计算机的机器语言。因此,使用流行的机器语言将会使既成软件在一台新计算机上运行得更加容易。所以对于那些机型商业化软件开发的人来说,它们通常只会关注一种或几种不同的机器语言。
更加强大的小型计算机,大型计算机和服务器可能会与上述计算机有所不同。它们通常将任务分担给不同的CPU来执行。今天,微处理器和多核个人电脑也在朝这个方向发展。
超级计算机通常有着与基本的存储程序计算机显着区别的体系结构。它们通常有着数以千计的CPU,不过这些设计似乎只对特定任务有用。在各种计算机中,还有一些微控制器采用令程序和数据分离的哈佛架构(Harvard architecture)。
计算机的数字电路实现
以上所说的这些概念性设计的物理实现是多种多样的。如同我们前述所及,一台存储程序式计算机既可以是巴比奇的机械式的,也可以是基于数字电子的。但是,数字电路可以通过诸如继电器之类的电子控制开关来实现使用2进制数的算术和逻辑运算。香农的论文正是向我们展示了如何排列继电器来组成能够实现简单布尔运算的逻辑门。其他一些学者很快指出使用真空管可以代替继电器电路。真空管最初被用作无线电电路中的放大器,之后便开始被越来越多地用作数字电子电路中的快速开关。当电子管的一个针脚被通电后,电流就可以在另外两端间自由通过。
通过逻辑门的排列组合我们可以设计完成很多复杂的任务。举例而言,加法器就是其中之一。该器件在电子领域实现了两个数相加并将结果保存下来—在计算机科学中这样一个通过一组运算来实现某个特定意图的方法被称做一个算法。最终,人们通过数量可观的逻辑门电路组装成功了完整的ALU和控制器。说它数量可观,只需看一下CSIRAC这台可能是最小的实用化电子管计算机。该机含有2000个电子管,其中还有不少是双用器件,也即是说总计合有2000到4000个逻辑器件。
真空管对于制造规模庞大的门电路明显力不从心。昂贵,不稳(尤其是数量多时),臃肿,能耗高,并且速度也不够快—尽管远超机械开关电路。这一切导致20世纪60年代它们被晶体管取代。后者体积更小,易于操作,可靠性高,更省能耗,同时成本也更低。
集成电路是现今电子计算机的基础20世纪60年代后,晶体管开始逐渐为将大量晶体管、其他各种电器元件和连接导线安置在一片硅板上的集成电路所取代。70年代,ALU和控制器作为组成CPU的两大部分,开始被集成到一块芯片上,并称为“微处理器”。沿着集成电路的发展史,可以看到一片芯片上所集成器件的数量有了飞速增长。第一块集成电路只不过包含几十个部件,而到了2006年,一块Intel Core Duo处理器上的晶体管数目高达一亿五千一百万之巨。
无论是电子管,晶体管还是集成电路,它们都可以通过使用一种触发器设计机制来用作存储程序体系结构中的“存储”部件。而事实上触发器的确被用作小规模的超高速存储。但是,几乎没有任何计算机设计使用触发器来进行大规模数据存储。最早的计算机是使用Williams电子管向一个电视屏或若干条水银延迟线(声波通过这种线时的走行速度极为缓慢足够被认为是“存储”在了上面)发射电子束然后再来读取的方式来存储数据的。当然,这些尽管有效却不怎么优雅的方法最终还是被磁性存储取而代之。比如说磁芯存储器,代表信息的电流可在其中的铁质材料内制造恒久的弱磁场,当这个磁场再被读出时就实现了数据恢复。动态随机存储器(DRAM)亦被发明出来。它是一个包含大量电容的集成电路,而这些电容器件正是负责存储数据电荷—电荷的强度则被定义为数据的值。
输入输出设备
输入输出设备(I/O)是对将外部世界信息发送给计算机的设备和将处理结果返回给外部世界的设备的总称。这些返回结果可能是作为使用者能够视觉上体验的,或是作为该计算机所控制的其他设备的输入:对于一台机器人,控制计算机的输出基本上就是这台机器人本身,如做出各种行为。
第一代计算机的输入输出设备种类非常有限。通常的输入用设备是打孔卡片的读卡机,用来将指令和数据导入内存;而用于存储结果的输出设备则一般是磁带。随着科技的进步,输入输出设备的丰富性得到提高。以个人计算机为例:键盘和鼠标是用户向计算机直接输入信息的主要工具,而显示器、打印机、扩音器、耳机则返回处理结果。此外还有许多输入设备可以接受其他不同种类的信息,如数码相机可以输入图像。在输入输出设备中,有两类很值得注意:第一类是二级存储设备,如硬盘,光盘或其他速度缓慢但拥有很高容量的设备。第二个是计算机网络访问设备,通过他们而实现的计算机间直接数据传送极大地提升了计算机的价值。今天,国际互联网成就了数以千万计的计算机彼此间传送各种类型的数据。
程序
简单说,计算机程序就是计算机执行指令的一个序列。它既可以只是几条执行某个简单任务的指令,也可能是可能要操作巨大数据量的复杂指令队列。许多计算机程序包含有百万计的指令,而其中很多指令可能被反复执行。在2005年,一台典型的个人电脑可以每秒执行大约30亿条指令。计算机通常并不会执行一些很复杂的指令来获得额外的机能,更多地它们是在按照程序员的排列来运行那些较简单但为数众多的短指令。
一般情况下,程序员们是不会直接用机器语言来为计算机写入指令的。那么做的结果只能是费时费力、效率低下而且漏洞百出。所以,程序员一般通过“高级”一些的语言来写程序,然后再由某些特别的计算机程序,如解释器或编译器将之翻译成机器语言。一些编程语言看起来很接近机器语言,如汇编程序,被认为是低级语言。而另一些语言,如即如抽象原则的Prolog,则完全无视计算机实际运行的操作细节,可谓是高级语言。对于一项特定任务,应该根据其事务特点,程序员技能,可用工具和客户需求来选择相应的语言,其中又以客户需求最为重要(美国和中国军队的工程项目通常被要求使用Ada语言)。
计算机软件是与计算机程序并不相等的另一个词汇。计算机软件一个较为包容性较强的技术术语,它包含了用于完成任务的各种程序以及所有相关材料。举例说,一个视频游戏不但只包含程序本身,也包括图片、声音以及其他创造虚拟游戏环境的数据内容。在零售市场,在一台计算机上的某个应用程序只是一个面向大量用户的软件的一个副本。这里老生常谈的例子当然还是微软的office软件组,它包括一些列互相关联的、面向一般办公需求的程序。
利用那些极其简单的机器语言指令来实现无数功能强大的应用软件意味着其编程规模注定不小。Windows XP这个操作系统程序包含的C++高级语言源代码达到了4000万行。当然这还不是最大的。如此庞大的软件规模也显示了管理在开发过程中的重要性。实际编程时,程序会被细分到每一个程序员都可以在一个可接受的时长内完成的规模。
即便如此,软件开发的过程仍然进程缓慢,不可预见且遗漏多多。应运而生的软件工程学就重点面向如何加快作业进度和提高效率与质量。
库与操作系统
在计算机诞生后不久,人们发现某些特定作业在许多不同的程序中都要被实施,比如说计算某些标准数学函数。出于效率考量,这些程序的标准版本就被收集到一个“库”中以供各程序调用。许多任务经常要去额外处理种类繁多的输入输出接口,这时,用于连接的库就能派上用场。
20世纪60年代,随着计算机工业化普及,计算机越来越多地被用作一个组织内不同作业的处理。很快,能够自动安排作业时续和执行的特殊软件出现了。这些既控制硬件又负责作业时序安排的软件被称为“操作系统”。一个早期操作系统的例子是IBM的OS/360。
在不断地完善中,操作系统又引入了时间共享机制——并发。这使得多个不同用户可以“同时”地使用机器执行他们自己的程序,看起来就像是每个人都有一台自己的计算机。为此,操作系统需要像每个用户提供一台“虚拟机”来分离各个不同的程序。由于需要操作系统控制的设备也在不断增加,其中之一便是硬盘。因之,操作系统又引入了文件管理和目录管理(文件夹),大大简化了这类永久储存性设备的应用。此外,操作系统也负责安全控制,确保用户只能访问那些已获得允许的文件。
当然,到目前为止操作系统发展历程中最后一个重要步骤就是为程序提供标准图形用户界面(GUI)。尽管没有什么技术原因表明操作系统必须得提供这些界面,但操作系统供应商们总是希望并鼓励那些运行在其系统上的软件能够在外观和行为特征上与操作系统保持一致或相似。
除了以上这些核心功能,操作系统还封装了一系列其他常用工具。其中一些虽然对计算机管理并无重大意义,但是于用户而言很是有用。比如,苹果公司的Mac OS X就包含视频剪辑应用程序。
一些用于更小规模的计算机的操作系统可能没用如此众多的功能。早期的微型计算机由于记忆体和处理能力有限而不会提供额外功能,而嵌入式计算机则使用特定化了的操作系统或者干脆没有,它们往往通过应用程序直接代理操作系统的某些功能。
应用
由电脑控制的机械在工业中十分常见
很多现代大量生产的玩具,如Furby,是不能没有便宜的嵌入式处理器
起初,体积庞大而价格昂贵的数字计算机主要是用做执行科学计算,特别是军用课题。如ENIAC最早就是被用作火炮弹道计算和设计氢弹时计算断面中子密度的(如今许多超级计算机仍然在模拟核试验方面发挥着巨大作用)。澳大利亚设计的首台存储程序计算机CSIR Mk I型负责对水电工程中的集水地带的降雨情形进行评估。还有一些被用于解密,比如英国的“巨像”可编程计算机。除去这些早年的科学或军工应用,计算机在其他领域的推广亦十分迅速。
从一开始,存储程序计算机就与商业问题的解决息息相关。早在IBM的第一台商用计算机诞生之前,英国J. Lyons等就设计制造了LEO以进行资产管理或迎合其他商业用途。由于持续的体积与成本控制,计算机开始向更小型的组织内普及。加之20世纪70年代微处理器的发明,廉价计算机成为了现实。80年代,个人计算机全面流行,电子文档写作与印刷,计算预算和其他重复性的报表作业越来越多地开始依赖计算机。
随着计算机便宜起来,创作性的艺术工作也开始使用它们。人们利用合成器,计算机图形和动画来创作和修改声音,图像,视频。视频游戏的产业化也说明了计算机在娱乐方面也开创了新的历史。
计算机小型化以来,机械设备的控制也开始仰仗计算机的支持。其实,正是当年为了建造足够小的嵌入式计算机来控制阿波罗宇宙飞船才刺激了集成电路技术的跃进。今天想要找一台不被计算机控制的有源机械设备要比找一台哪怕是部分计算机控制的设备要难得多。可能最着名的计算机控制设备要非机器人莫属,这些机器有着或多或少人类的外表和并具备人类行为的某一子集。在批量生产中,工业机器人已是寻常之物。不过,完全的拟人机器人还只是停留在科幻小说或实验室之中。
机器人技术实质上是人工智能领域中的物理表达环节。所谓人工智能是一个定义模糊的概念但是可以肯定的是这门学科试图令计算机拥有目前它们还没有但作为人类却固有的能力。数年以来,不断有许多新方法被开发出来以允许计算机做那些之前被认为只有人才能做的事情。比如读书、下棋。然而,到目前为止,在研制具有人类的一般“整体性”智能的计算机方面,进展仍十分缓慢。
网络、国际互联网
20世纪50年代以来计算机开始用作协调来自不同地方之信息的工具,美国军方的贤者系统(SAGE)就是这方面第一个大规模系统。之后“军刀”等一系列特殊用途的商业系统也不断涌现出来。
‘叁’ 急问!Fortune和Fortran是一种语言吗
FORTRAN
公式翻译器,它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域。FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重要作用。Fortran 90之前的版本是人们所知晓的FORTRAN(全部字母大写),从Fortran 90以及以后的版本都写成Fortran(仅有第一个字母大写)。
发展历史
开发史
1951年:美国IBM公司约翰·贝克斯(John Backus)
约翰·贝克斯
针对汇编语言的缺点着手研究开发FORTRAN语言。
1954年:约翰·贝克斯在纽约正式对外发布,称为FORTRANⅠ,FORTRANⅠ功能简单,但它的开创性工作,在社会上引起了极大的反响。
1957年:第一个FORTRAN编译器在IBM704计算机上实现,并首次成功运行了FORTRAN程序。
1958年:对FORTRANⅠ进行了扩充和完善,引进了子函数等概念,推出了商业化的FORTRANⅡ版本。
1962年:推出了FORTRAN Ⅳ。FORTRAN Ⅳ没有充分考虑兼容性,导致FORTRANⅡ程序不能在FORTRAN Ⅳ系统中运行,使其应用受到了很大限制,这时语言不兼容性问题和影响被突出表现出来。此前也出现过FORTRAN Ⅲ,但由于存在严重缺陷,没有在计算机上实现。
标准化
随着FORTRAN语言版本的不断更新和变化,语言不兼容性问题日益突出,语言标准化工作被提上了日程。
1962年5月:美国标准化协会(简称ANSI)着手进行FORTRAN语言标准化的研究工作。
1966年:ANSI正式公布了两个标准文本:美国国家标准FORTRAN(ANSI X3.9-1966)和美国国家标准基本FORTRAN(ANSI X3.10-1966),前者相当于FORTRAN Ⅳ,后者相当于FORTRANⅡ。基本FORTRAN是美国国家标准FORTRAN的一个子集,从而实现了语言的向下兼容,初步解决了语言的兼容性问题。通常称美国国家标准FORTRAN为FORTRAN 66。FORTRAN 66的推出在国际上产生了广泛影响。
1972年:国际标准化组织(简称ISO)在FORTRAN 66基础上制定了FORTRAN语言三级国际标准:基本级、中间级和完全级。
20世纪60代末,结构化程序设计方法提出后,具有结构化特征的程序设计语言开始出现。如:ALGOL、PASCAL、MODULA、C等。计算机厂商和研究机构的高度重视将结构化特征引入FORTRAN 66,并开始对FORTRAN 66进行不同程度的扩充,引入了结构化特征。
1976年:ANSI对FORTRAN 66(ANSI X3.9-1966)进行了修订,吸收了计算机厂商所扩充的一些具有可行性的功能,同时增加了许多新内容。
1978年4月:ANSI正式公布了新的美国国家标准(程序设计语言FORTRAN ANSI X3.9-1978),同时宣布撤消ANSI FORTRAN 3.9-1966,通常称新标准为FORTRAN 77(该版本原计划1977年公布)。FORTRAN 77向下兼容FORTRAN 66。
1980年:FORTRAN 77被ISO正式确定为国际标准ISO 1539-1980,该标准分全集和子集。FORTRAN 77推出后,由于具有结构化特征,在社会上得到了广泛应用,同时由于扩充了字符处理功能,在非数值处理领域也能大显身手。
20世纪80年代末,FORTRAN 77结构化和现代化的研究开始兴起。
1991年5月:ANSI公布了新的美国国家标准FORTRAN(ANSI 3.198-1991)。之后,ISO采纳该标准,并确定为国际标准ISO/IEC 1539-1:1991,新国际标准还采纳了中国计算机和信息处理标准化技术委员会程序设计分会提出的多字节字符集数据类型及相应的内部函数,为非英语国家使用计算机提供了极大的方便。通常称新标准为Fortran 90,Fortran 90向下兼容FORTRAN 77。之后不久又出现了Fortran 95。
Fortran 90的推出,使传统Fortran语言具有了现代气息。Fortran 2003 的规则已经由ISO组织制定发布。
平台化
Windows平台下,微软公司将Fortran 90无缝集成在Developer Studio集成开发环境之中,推出了Microsoft Fortran PowerStation 4.0,使Fortran 90真正实现了可视化编程,彻底告别了传统DOS环境(字符界面),转到了现代Windows环境(视窗界面),共享微软公司Windows平台的丰富资源。
1997年3月:微软公司和数据设备公司(Digital Equipment Corp,简称DEC)合作研究、开发和推出了功能更强的Fortran语言新版本:Digital Visual FORTRAN 5.0,它是Microsoft FORTRAN PowerStation 4.0的升级换代产品。DEC公司在高性能科学和工程计算方面拥有先进的技术,研发了高质量的FORTRAN编译器。
1998年1月:DEC与Compag公司合并,DEC成为Compag公司的全资子公司,于是Digital Visual Fortran更名为Compaq Visual Fortran,其最新版本为Compag Visual Fortran 6.6。Compaq和HP合并之后,Compaq的Fortran小组和Intel的Fortran开发小组合并,开发出来Intel Fotran编译器9,有Linux和windows2个版本,其Windows版本为Intel Visual Fortran, 可以和微软的Visual Studio,net集成。Windows平台下还有PGI,Absoft,Intel等多个商业公司的Fortran编译器,还有大量小公司的免费Fortran编译器。
OpenMPI使Fortran等语言可以容易且免费的实现并行计算。
Linux平台下,其GCC编译器默认支持Fortran,另外有Intel,Sun Studio,OpenMPI,Photran等共享编译器和PGI,Absoft,lachy, IBM,SGI,HP等多个版本的商业编译器。
支持Fortran 2003标准的编译器行将推出,新版本的Sun Studio 编译器已经支持部分 Fortran 2003 语法。
而
fortune
英 ['fɔːtʃuːn; -tʃ(ə)n] 美 ['fɔrtʃən]
n. 财富;命运;运气
vt. 给予财富
vi. 偶然发生
n. (Fortune)人名;(英)福琼;(法)福蒂纳
[ 过去式 fortuned 过去分词 fortuned 现在分词 fortuning ]
例句:He gambled away all his fortune.
他赌博输掉了全部财产。
Fame and fortune beckoned to them.
名誉和运气诱惑着他们。
He endowed the hospital with half his fortune.
他把他的一半财产捐赠给了这家医院。
‘肆’ 中国古代四大发明家是谁他们又发明了什么
1、张衡
东汉时期,也就是距今约一千八百多年前(公元117年),一台利用水力推动运转的大型天文仪器――“水运浑象”在东汉的京都洛阳制造成功。
相隔二十年后(公元138年),安置在京都洛阳的又一台仪器――“候风地动仪”,准确地报告了西方千里之外发生的地震。这标志着人类开始了用仪器记录研究地震的新纪元。
2、蔡伦
纸的发明家蔡伦的名字也许鲜为人知。与他的重大发明相比,他在西方受到忽视的程度的确使人瞠目,有些大部头的网络全书里甚至没有一篇短文提及到他,他的名字在标准的历史教程中也很少提到。
由于纸的重要性显而易知,所以有关蔡伦史料的缺乏会使人们认为他这个人物是纯属虚构。但是经过仔细研究就清楚地说明蔡伦确有其人。
3、毕升
发明创造:活字印刷术的发明者
4、杜诗
杜诗 ,(?-38)东汉机械工程家。字君公。河南汲县(今河南)人。光武帝时,为侍御史。建武七年(公元31年),任南阳太守时,创造水排(水力鼓风机),以水力传动机械,使皮制的鼓风囊连续开合,将空气送入冶铁炉,铸造农具,用力少而见效多。
(4)老约翰编译器扩展阅读:
意大利数学家杰罗姆·卡丹早在1550年就第一个指出,中国对世界所具有影响的“三大发明”:是司南(指南针)、印刷术和火药。并认为它们是“整个古代没有能与之相匹敌的发明。”
1620年,英国哲学家培根也曾在《新工具》一书中提到:“印刷术、火药、指南针这三种发明已经在世界范围内把事物的全部面貌和情况都改变了。”
而后,在1861~1863年,马克思和恩格斯更是将这些发明的意义推到了一个高峰,马克思在《机械、自然力和科学的运用》中写道:“火药、指南针、印刷术——这是预告资产阶级社会到来的三大发明。
火药把骑士阶层炸得粉碎,指南针打开了世界市场并建立了殖民地,而印刷术则变成了新教的工具,总的来说变成了科学复兴的手段,变成对精神发展创造必要前提的最强大的杠杆。”
恩格斯则在《德国农民战争》中明确指出:“一系列的发明都各有或多或少的重要意义,其中具有光辉的历史意义的就是火药。
现在已经毫无疑义地证实了,火药是从中国经过印度传给阿拉伯人,又由阿拉伯人和火药武器一道经过西班牙传入欧洲。”
英国汉学家麦都思指出:“中国人的发明天才,很早就表现在多方面。中国人的三大发明(航海罗盘(司南),印刷术,火药),对欧洲文明的发展,提供异乎寻常的推动力。”
‘伍’ 编程语言 究竟有哪些
一、引言
在计算机科学中,编程语言是用来编写可被计算机运行的一系列指令(计算机程序)的人工语言。与英语等自然语言相类似,编程语言具有词汇、语法和句法。然而,自然语言不适合计算机编程,因为它们能引起歧义,也就是说它们的词汇和语法结构可以用多种方式进行解释。用于计算编程的语言必须具有简单的逻辑结构,而且它们的语法、拼写和标点符号的规则必须精确。
编程语言在复杂性和通用程度上大相径庭。有些编程语言是为了处理特定类型的计算问题或为了用于特定型号的计算机系统而编写的。例如,FORTRAN和COBOL等编程语言是为解决某些普遍的编程问题类型而编写的——FORTRAN为了科学领域的应用,而COBOL为了商业领域的应用。尽管这些语言旨在处理特定类型的计算机问题,但是它们具有很高的可移植性,也就是说它们可以用来为多种类型的计算机编程。其他的语言,譬如机器语言,是为一种特定型号的计算机系统,甚至是一台特定的计算机,在某些研究领域使用而编写的。最常用的编程语言具有很高的可移植性,可以用于有效地解决不同类型的计算问题。像C、PASCAL和BASIC这样的语言就属于这一范畴。
二、语言类型
编程语言可划分为低级语言和高级语言。低级编程语言或机器语言,是编程语言中最基础的类型,能被计算机直接理解。机器语言的区别取决于制造商和计算机的型号。高级语言是在计算机能够理解和处理之前必须首先翻译成机器语言的编程语言。C、C++、PASCAL和FORTRAN都是高级语言的例子。汇编语言是中级语言,非常接近于机器语言,没有其他高级语言所表现出的语言复杂程度,但仍然得翻译成机器语言。
1、机器语言
在机器语言中,指令被写成计算机能够直接理解的被称之为比特的1和0的序列。机器语言中的一条指令通常告诉计算机4件事情:(1)到计算机主存储器(随机访问存储器)的哪个位置去找一或两个数字或者简单的数据段;(2)要执行的一个简单操作,例如将两个数字加起来;(3)将这个简单操作的结果存放在主存储器的什么位置;以及(4)到哪里找要执行的下一条指令。虽然所有的可执行程序最终都是以机器语言的形式被计算机读取,但是它们并非都是用机器语言编写的。直接用机器语言编程极端困难,因为指令是1和0的序列。机器语言中的一条典型的指令可能是10010 1100 1011,意思是将存储寄存器A的内容加到存储寄存器B的内容中。
2、高级语言
高级语言是利用人类语言中的词和句法的一套相对复杂的语句。它们比汇编语言和机器语言更类似于正常的人类语言,因此用来编写复杂的程序更容易。这些编程语言允许更快地开发更庞大和更复杂的程序。然而,在计算机能够理解之前,高级语言必须被称之为编译器的另外一种程序翻译成机器语言。因为这个原因,与用汇编语言编写的程序比较起来,用高级语言编写的程序可能运行的时间更长,占用的内存更多。
3、汇编语言
计算机编程人员使用汇编语言使机器语言程序编写起来更简单一些。在汇编语言中,每条语句大致对应一条机器语言指令。汇编语言的语句是借助易于记忆的命令编写的。在典型的汇编语言的语句中,把存储寄存器A的内容加到存储寄存器B的内容中这一命令,可以写成ADD B, A。汇编语言与机器语言具有某些共同特征。例如,对特定的比特进行操作,用汇编语言和机器语言都是可行的。当尽量减少程序的运行时间很重要时,程序员就使用汇编语言,因为从汇编语言到机器语言的翻译相对简单。当计算机的某个部分必须被直接控制时,如监视器上的单个点或者流向打印机的单个字符,这时也使用汇编语言。
三、高级语言的分类
高级语言通常分为面向过程的、函数式的、面向对象的或逻辑的语言。当今最常见的高级语言是面向过程的语言。在这种语言中,执行某个完整功能的一个或多个相关的语句块组成一个程序模块或过程,而且被给予诸如“过程A”的名称。如果在程序的其他地方需要同样的操作序列,可以使用一个简单的语句调回这个过程。实质上,一个过程就是一个小型程序。一个大程序可以通过将执行不同任务的过程组合在一起而构成。过程语言使程序变得比较短,而且更易于被计算机读取,但是要求程序员将每个过程都设计得足够通用,能用于不同的情况。
函数式语言像对待数学函数一样对待过程,并允许像处理程序中的任何其他数据一样处理它们。这就使程序构造在更高、更严密的水平上得以实现。函数式语言也允许变量——在程序运行过程中可以被用户指定和更改的数据符号——只被赋值一次。这样,通过减少对语句执行的确切顺序给予关注的必要性,就简化了编程,因为一个变量没有必要每次在一个程序语句中用到,都重新定义或重新赋值。函数式语言的许多观点已经成为许多现代过程语言的关键部分。
面向对象的语言是函数式语言的发展结果。在面向对象的语言中,用来编写程序的代码和程序处理的数据,组合成叫做对象的单元。对象进一步组合成类,而类则定义对象必须具有的属性。类的一个简单例子就是书这个类。这个类中的对象可能是小说和短篇小说。对象还有某些与其相关的功能,称为方法。计算机通过使用对象的某种方法来使用这个对象。方法对对象中的数据执行某个操作,然后将值返回给计算机。对象的类也可更进一步组合成层,而在层中一个类的对象可继承另一个类的方法。面向对象的语言中所提供的这种结构,使面向对象的语言对于复杂的编程任务非常有用。
逻辑语言将逻辑用作其数学基础。一个逻辑程序由一系列的事实与“如果……则”规则组成,来具体说明一系列事实如何可以从其他实事中推断出来,例如:
如果X语句为真,则Y语句为假。
在这样一个程序的执行过程中,一条输入语句可以按照逻辑从程序中的其他语句推断出来。许多人工智能程序使用这种语言编写。
四、语言的结构与成分
编程语言使用特定类型的语句或指令,来给程序提供功能结构。程序中的一条语句是表达一个简单意思的基本句子,其目的是给计算机一条基本指令。语句对允许的数据类型、数据如何处理以及过程和函数的工作方式进行定义。程序员利用语句来操作编程语言的常见成分,如变量和宏(程序中的小型程序)。
数据声明语句给予称为变量的程序元素以名称和属性。变量在程序中可以赋予不同的值。变量可以具有的属性被称作类型,它们包括:变量中可能存储什么样的值,值中使用何种程度的数值精度,以及一个变量可以如何以有组织结构的方式——如以表或数组的形式——代表一组比较简单的值等等。在许多编程语言中,一种关键的数据类型是指示字。指示字变量本身没有值;相反,它们含有计算机可以用来查找某个其他变量的信息——也就是说,它们指向另一个变量。
表达式是语句的一段,描述要对一些程序变量执行的一系列运算,如X+Y/Z,其中X、Y和Z为变量,运算方法为加和除。赋值语句给一个变量赋予得自某个表达式的值,而条件语句则指定要被测试、然后用于选择接下来应该执行的其他语句的表达式。
过程与函数语句将某些代码块定义为以后可在程序中返回的进程或函数。这些语句也规定程序员可以选择的变量与参数种类,以及当一个表达式使用过程或函数时代码将返回的值的类型。许多编程语言也容许叫做宏的小型翻译程序。宏把使用程序员定义的语言结构编写的代码段翻译成编程语言可以理解的语句。
五、历史
编程语言几乎可以追溯到20世纪40年代数字计算机发明之时。最早的汇编语言,随着商业计算机的推出,出现于20世纪50年代末。最早的过程语言是在20世纪50年代末到20世纪60年代初开发的:FORTRAN语言由约翰•巴克斯创造,然后由格雷斯•霍珀创造了COBOL语言。第一种函数式语言是LISP,由约翰•麦卡锡于20世纪50年代末编写。这3种语言今天仍在广泛使用,但经历过大量修改。
20世纪60年代末,出现了最早的面向对象的语言,如SIMULA语言。逻辑语言在20世纪70年代中期随着PROLOG语言的推出而变得广为人知;PROLOG语言是一种用于编写人工智能软件的语言。在20世纪70年代,过程语言继续发展,出现了ALGOL、BASIC、PASCAL、C和Ada等语言。SMALLTALK语言是一种具有高度影响力的面向对象的语言,它导致了面向对象的语言与过程语言在C++和更近期的JAVA语言中的结合。尽管纯粹的逻辑语言受欢迎的程度有所下降,但其变体以现代数据库所使用的关系语言——如结构化查询语言——的形式,变得至关重要。
‘陆’ 计算机一共有几个发展阶段分别在那个年代
计算机一共有4个发展阶段,分别是:
第1代:电子管数字机(1946—1958年)
硬件方面,逻辑元件采用的是真空电子管,主存储器采用汞延迟线、阴极射线示波管静电存储器、磁鼓、磁芯;外存储器采用的是磁带。软件方面采用的是机器语言、汇编语言。应用领域以军事和科学计算为主。
缺点是体积大、功耗高、可靠性差。速度慢(一般为每秒数千次至数万次)、价格昂贵,但为以后的计算机发展奠定了基础。
第2代:晶体管数字机(1958—1964年)
软件方面的操作系统、高级语言及其编译程序应用领域以科学计算和事务处理为主,并开始进入工业控制领域。特点是体积缩小、能耗降低、可靠性提高、运算速度提高(一般为每秒数10万次,可高达300万次)、性能比第1代计算机有很大的提高。
第3代:集成电路数字机(1964—1970年)
硬件方面,逻辑元件采用中、小规模集成电路(MSI、SSI),主存储器仍采用磁芯。软件方面出现了分时操作系统以及结构化、规模化程序设计方法。
特点是速度更快(一般为每秒数百万次至数千万次),而且可靠性有了显着提高,价格进一步下降,产品走向了通用化、系列化和标准化等。应用领域开始进入文字处理和图形图像处理领域。
第4代:大规模集成电路计算机(1970年至今)
硬件方面,逻辑元件采用大规模和超大规模集成电路(LSI和VLSI)。软件方面出现了数据库管理系统、网络管理系统和面向对象语言等。1971年世界上第一台微处理器在美国硅谷诞生,开创了微型计算机的新时代。应用领域从科学计算、事务管理、过程控制逐步走向家庭。
计算机应用在信息管理:
信息管理是以数据库管理系统为基础,辅助管理者提高决策水平,改善运营策略的计算机技术。信息处理具体包括数据的采集、存储、加工、分类、排序、检索和发布等一系列工作。信息处理已成为当代计算机的主要任务。
计算机的应用已渗透到社会的各个领域,正在日益改变着传统的工作、学习和生活的方式,推动着社会的科学计算。
科学计算是计算机最早的应用领域,是指利用计算机来完成科学研究和工程技术中提出的数值计算问题。在现代科学技术工作中,科学计算的任务是大量的和复杂的。
利用计算机的运算速度高、存储容量大和连续运算的能力,可以解决人工无法完成的各种科学计算问题。例如,工程设计、地震预测、气象预报等都需要由计算机承担庞大而复杂的计算量。
‘柒’ 电脑是谁发明的
第一台计算机(ENIAC)于1946年2月,在美国诞生。 一、机械计算机的诞生 1614 年:苏格兰人John Napier(1550 ~1617 年)发表了一篇论文 ,其中提到他发明了一种可以进行四则运算和方根运算的精巧装置。 1623 年:Wilhelm Schickard(1592 ~1635 年)制作了一个能进行6 位数以内加减法运算,并能通过铃声输出答案的“计算钟”。该装置通过转动齿轮来进行操作。 1625 年:William Oughtred(1575 ~1660 年)发明计算尺。 1668 年:英国人Samuel Morl(1625 ~1695 年)制作了一个非十进制的加法装置,适宜计算钱币。 1671 年:德国数学家Gottfried Leibniz 设计了一架可以进行乘法运算,最终答案长度可达16位的计算工具。 1822 年:英国人Charles Babbage(1792 ~1871 年)设计了差分机和分析机 ,其设计理论非常超前,类似于百年后的电子计算机,特别是利用卡片输入程序和数据的设计被后人所采用。 1834 年:Babbage 设想制造一台通用分析机,在只读存储器(穿孔卡片)中存储程序和数据 。Babbage在以后的时间里继续他的研究工作,并于1840 年将操作位数提高到了40 位,并基本实现了控制中心(CPU)和存储程序的设想,而且程序可以根据条件进行跳转,能在几秒内做出一般的加法,几分钟内做出乘、除法。 1848 年:英国数学家George Boole 创立二进制代数学,提前近一个世纪为现代二进制计算机的发展铺平了道路。 1890 年:美国人口普查部门希望能得到一台机器帮助提高普查效率。Herman Hollerith (后来他的公司发展成了IBM 公司)借鉴Babbage 的发明,用穿孔卡片存储数据,并设计了机器。结果仅用6 周就得出了准确的人口统计数据(如果用人工方法,大概要花10 年时间)。 1896 年:Herman Hollerith 创办了IBM 公司的前身。 二、电子计算机问世 1906 年:美国人Lee De Forest 发明电子管,为电子计算机的发展奠定了基础。 1924 年2 月:IBM 公司成立,从此一个具有划时代意义的公司诞生。 1935 年:IBM 推出IBM 601 机。这是一台能在一秒钟内算出乘法的穿孔卡片计算机 。这台机器无论在自然科学还是在商业应用上都具有重要的地位,大约制造了1500 台。 1937 年:英国剑桥大学的Alan M.Turing(1912 ~1954 年)出版了他的论文 ,并提出了被后人称之为“图灵机”的数学模型。 1937 年:Bell 试验室的George Stibitz 展示了用继电器表示二进制的装置。尽管仅仅是个展示品,但却是第一台二进制电子计算机。 1940 年1 月:Bell 实验室的Samuel Williams 和Stibitz 制造成功了一个能进行复杂运算的计算机。该机器大量使用了继电器,并借鉴了一些电话技术,采用了先进的编码技术。 1941 年夏季:Atanasoff 和学生Berry 完成了能解线性代数方程的计算机,取名叫“ABC ”(Atanasoff-Berry Computer),用电容作存储器 ,用穿孔卡片作辅助存储器 ,那些孔实际上是“烧”上去的,时钟频率是60Hz,完成一次加法运算用时一秒。 1943 年1 月:Mark I 自动顺序控制计算机在美国研制成功。整个机器有51 英尺长 、5 吨重 、75万个零部件。该机使用了3304 个继电器 ,60 个开关作为机械只读存储器 。程序存储在纸带上 ,数据可以来自纸带或卡片阅读器。Mark I 被用来为美国海军计算弹道火力表。 1943 年9 月:Williams 和Stibitz 完成了“Relay Interpolator ”,后来命名为“ModelⅡ Re-lay Calculator ”的计算机。这是一台可编程计算机,同样使用纸带输入程序和数据。它运行更可靠,每个数用7 个继电器表示,可进行浮点运算。 1946 年:ENIAC(Electronic Numerical Integrator And Computer)诞生 ,这是第一台真正意义上的数字电子计算机。开始研制于1943 年,完成于1946 年,负责人是John W.Mauchly 和J.Presper Eckert,重30 吨,用了18000 个电子管,功率25 千瓦,主要用于计算弹道和氢弹的研制。 三、晶体管计算机的发展 1947 年:Bell 实验室的William B.Shockley 、 John Bardeen 和Walter H.Brattain 发明了晶体管,开辟了电子时代新纪元。 1949 年:剑桥大学的Wilkes 和他的小组制成了一台可以存储程序的计算机,输入输出设备仍是纸带。 1949 年:EDVAC(Electronic Discrete Variable Automatic Computer——电子离散变量自动计算机)——第一台使用磁带的计算机。这是一个突破,可以多次在磁带上存储程序。这台机器是John von Neumann 提议建造的。 1950 年:日本东京帝国大学的Yoshiro Nakamats 发明了软磁盘 ,其销售权由IBM公司获得 。由此开创了存储时代的新纪元。 1951 年:Grace Murray Hopper 完成了高级语言编译器。 1951 年:UNIVAC-1 ——第一台商用计算机系统诞生,设计者是J.Presper Eckert 和JohnMauchly 。被美国人口普查部门用于人口普查,标志着计算机进入了商业应用时代。 1953 年:磁芯存储器被开发出来。 1954 年:IBM 的John Backus 和他的研究小组开始开发FORTRAN(FORmula TRANslation) ,1957 年完成。这是一种适合科学研究使用的计算机高级语言。 1957 年:IBM 开发成功第一台点阵式打印机。 四、集成电路为现代计算机铺平道路 1958 年9 月12 日:在Robert Noyce(Intel 公司创始人)的领导下,集成电路诞生 ,不久又发明了微处理器。但因为在发明微处理器时借鉴了日本公司的技术,所以日本对其专利不承认,因为日本没有得到应有的利益。过了30 年,日本才承认,这样日本公司可以从中得到一部分利润。但到2001 年,这个专利就失效了。 1959 年:Grace Murray Hopper 开始开发COBOL(COmmon Business-Oriented Language)语言 ,完成于1961 年。 1960 年:ALGOL ——第一个结构化程序设计语言推出。 1961 年:IBM 的Kennth Iverson 推出APL 编程语言。 1963 年:DEC 公司推出第一台小型计算机——PDP-8 。 1964 年:IBM 发布PL/1 编程语言。 1964 年:发布IBM 360 首套系列兼容机。 1964 年:DEC 发布PDB-8 小型计算机。 1965 年:摩尔定律发表,处理器的晶体管数量每18 个月增加一倍,价格下降一半。 1965 年:Lofti Zadeh 创立模糊逻辑,用来处理近似值问题。 1965 年:Thomas E.Kurtz 和John Kemeny 完成BASIC(Beginner ’s All-purpose SymbolicIn-struction Code)语言的开发。特别适合计算机教育和初学者使用,得以广泛推广。 1965 年:Douglas Englebart 提出鼠标器的设想,但没有进一步研究,直到1983年才被苹果电脑公司大量采用。 1965 年:第一台超级计算机CD6600 开发成功。 1967 年:Niklaus Wirth 开始开发PASCAL 语言,1971 年完成。 1968 年:Robert Noyce 和他的几个朋友创办了Intel 公司。 1968 年:Seymour Paper 和他的研究小组在MIT 开发了LOGO 语言。 1969 年:ARPANet(Advanced Research Projects Agency Network)计划开始启动,这是现代Internet 的雏形。 1969 年4 月7 日:第一个网络协议标准RFC 推出。 1970 年:第一块RAM 芯片由Intel 推出,容量1KB 。 1970 年:Ken Thomson 和Dennis Ritchie 开始开发UNIX 操作系统。 1970 年:Forth 编程语言开发完成。 1970 年:Internet 的雏形ARPANet 基本完成,开始向非军用部门开放。 1971 年11 月15 日:Marcian E.Hoff 在Intel 公司开发成功第一块微处理器4004,含2300个晶体管,字长为4 位,时钟频率为108KHz,每秒执行6 万条指令。 1972 年:1972 年以后的计算机习惯上被称为第四代计算机。基于大规模集成电路及后来的超大规模集成电路。这一时期的计算机功能更强,体积更小。此时人们开始怀疑计算机能否继续缩小,特别是发热量问题能否解决。同时,人们开始探讨第五代计算机的开发。 1972 年:C 语言开发完成。其主要设计者是UNIX 系统的开发者之一Dennis Ritche。这是一个非常强大的语言,特别受人喜爱。 1972 年:Hewlett-Packard 发明了第一个手持计算器。 1972 年4 月1 日:Intel 推出8008 微处理器。 1972 年:ARPANet 开始走向世界,Internet 革命拉开序幕。 1973 年:街机游戏Pong 发布,得到广泛欢迎。发明者是Nolan Bushnell(Atari 的创立者)。 1974 年:第一个具有并行计算机体系结构的CLIP-4 推出。 五、当代计算机技术渐入辉煌 在此之前,应该说计算机技术还是主要集中于大型机和小型机领域的发展。随着超大规模集成电路和微处理器技术的进步,计算机进入寻常百姓家的技术障碍逐渐被突破。特别是在Intel公司发布了其面向个人用户的微处理器8080 之后,这一浪潮终于汹涌澎湃起来,同时也催生出了一大批信息时代的弄潮儿,如Stephen Jobs(史缔芬�6�1乔布斯)、Bill Gates(比尔�6�1盖茨)等 ,至今他们对整个计算机产业的发展还起着举足轻重的作用。在此时段,互联网技术和多媒体技术也得到了空前的应用与发展,计算机真正开始改变我们的生活。 1974 年4 月1 日:Intel 发布其8 位微处理器芯片8080 。 1975 年:Bill Gates 和Paul Allen 完成了第一个在MIT(麻省理工学院)的Altair 计算机上运行的BASIC 程序。 1975 年:Bill Gates 和Paul Allen 创办Microsoft 公司(现已成为全球最大、最成功的软件公司)。3 年后就收入50 万美元,员工增加到15 人。1992 年达28 亿美元,1 万名雇员。1981年Microsoft为IBM 的PC 机开发操作系统,从此奠定了在计算机软件领域的领导地位。 1976 年:Stephen Wozinak 和Stephen Jobs 创办苹果计算机公司,并推出其Apple Ⅰ计算机。 1978 年6 月8 日:Intel 发布其16 位微处理器8086 。1979 年6 月又推出准16 位的8088 来 满足市场对低价处理器的需要,并被IBM 的第一代PC 机所采用。该处理器的时钟频率为4.77MHz 、8MHz和10MHz,大约有300 条指令,集成了29000 个晶体管。 1979 年:低密软磁盘诞生。 1979 年:IBM 公司眼看个人计算机市场被苹果等电脑公司占有,决定开发自己的个人计算机 。为了尽快推出自己的产品,IBM 将大量工作交给第三方来完成(其中微软公司就承担了操作系统的开发工作 ,这同时也为微软后来的崛起奠定了基础),于1981 年8 月12 日推出了IBM- PC 。 1980 年:“只要有1 兆内存就足够DOS 尽情表演了”,微软公司开发DOS 初期时说 。今天来听这句话有何感想呢? 1981 年:Xerox 开始致力于图形用户界面、图标、菜单和定位设备(如鼠标)的研制 。结果研究成果为苹果所借鉴,而苹果电脑公司后来又指控微软剽窃了他们的设计,开发了Windows 系列软件。 1981 年8 月12 日:MS-DOS 1.0 和PC-DOS 1.0 发布。Microsoft 受IBM 的委托开发DOS 操作系统,他们从Tim Paterson 那里购买了一个叫86-DOS 的程序并加以改进。由IBM 销售的版本叫PC-DOS,由Microsoft 销售的叫MS-DOS 。Microsoft 与IBM 的合作一直到1991 年的DOS 5.0 为止。最初的DOS 1.0非常简陋,每张盘上只有一个根目录,不支持子目录,直到1983 年3 月的2.0 版才有所改观。MS-DOS在1995 年以前一直是与IBM-PC 兼容的操作系统,Windows 95 推出并迅速占领市场之后,其最后一个版本命名为DOS 7.0 。 1982 年:基于TCP/IP 协议的Internet 初具规模。 1982 年2 月:80286 发布,时钟频率提高到20MHz 、增加了保护模式、可访问16MB 内存、支持1GB以上的虚拟内存、每秒执行270 万条指令、集成了13.4 万个晶体管。 1983 年春季:IBM XT 机发布,增加了10MB 硬盘、128KB 内存、一个软驱、单色显示器、一台打印机、可以增加一个8087 数字协处理器。当时的价格为5000 美元。 1983 年3 月:MS-DOS 2.0 和PC-DOS 2.0 增加了类似UNIX 分层目录的管理形式。 1984 年:DNS(Domain Name Server)域名服务器发布,互联网上有1000 多台主机运行。 1984 年底:Compaq 开始开发IDE 接口,能以更快的速度传输数据,并被许多同行采纳,后来在此基础上开发出了性能更好的EIDE 接口。 1985 年:Philips 和SONY 合作推出CD-ROM 驱动器。 1985 年10 月17 日:80386 DX 推出 。时钟频率达到33MHz 、可寻址1GB 内存 、每秒可执行600万条指令、集成了275000 个晶体管。 1985 年11 月:Microsoft Windows 发布。该操作系统需要DOS 的支持,类似苹果机的操作界面 ,以致被苹果控告,该诉讼到1997 年8 月才终止。 1985 年12 月:MS-DOS 3.2 和PC-DOS 3.2 发布。这是第一个支持3.5 英寸磁盘的系统,但只支持到720KB,3.3 版才支持1.44MB 。 1987 年:Microsoft Windows 2.0 发布。 1988 年:EISA 标准建立。 1989 年:欧洲物理粒子研究所的Tim Berners-Lee 创立World Wide Web 雏形。通过超文本链接,新手也可以轻松上网浏览。这大大促进了Internet 的发展。 1989 年3 月:EIDE 标准确立,可以支持超过528MB 的硬盘,能达到33.3MB/s 的传输速度,并被许多CD-ROM 所采用。 1989 年4 月10 日:80486 DX 发布。该处理器集成了120 万个晶体管,其后继型号的时钟频率达到100MHz 。 1989 年11 月:Sound Blaster Card(声卡)发布。 1990 年5 月22 日:微软发布Windows 3.0,兼容MS-DOS 模式。 1990 年11 月:第一代MPC(多媒体个人电脑标准)发布。该标准要求处理器至少为80286/12MHz(后来增加到80386SX/16MHz)及一个光驱,至少150KB/sec 的传输率。 1991 年:ISA 标准发布。 1991 年6 月:MS-DOS 5.0 和PC-DOS 5.0 发布。为了促进OS/2 的发展,Bill Gates 说DOS5.0 是 DOS 终结者,今后将不再花精力于此。该版本突破了640KB 的基本内存限制。这个版本也标志着微软与IBM 在DOS 上合作的终结。 1992 年:Windows NT 发布,可寻址2GB 内存。 1992 年4 月:Windows 3.1 发布。 1993 年:Internet 开始商业化运行。 1993 年:经典游戏Doom 发布。 1993 年3 月22 日:Pentium 发布,该处理器集成了300 多万个晶体管、早期版本的核心频率为60 ~66MHz 、每秒钟执行1 亿条指令。 1993 年5 月:MPC 标准2 发布,要求CD-ROM 传输率达到300KB/s,在320 ×240 的窗口中每秒播放15 帧图像。 1994 年3 月7 日:Intel 发布90 ~100MHz Pentium 处理器。 1994 年:Netscape 1.0 浏览器发布。 1994 年:着名的即时战略游戏Command&Conquer(命令与征服)发布。 1995 年3 月27 日:Intel 发布120MHz 的Pentium 处理器。 1995 年6 月1 日:Intel 发布133MHz 的Pentium 处理器。 1995 年8 月23 日:纯32 位的多任务操作系统Windows 95 发布。该操作系统大大不同于以前的版本 ,完全脱离MS-DOS,但为照顾用户习惯还保留了DOS 模式。Windows 95 取得了巨大成功。 1995 年11 月1 日:Pentium Pro 发布,主频可达200MHz 、每秒可执行4.4 亿条指令、集成了550万个晶体管。 1995 年12 月:Netscape 发布其JavaScript 。 1996 年1 月:Netscape Navigator 2.0 发布。这是第一个支持JavaScript 的浏览器。 1996 年1 月4 日:Intel 发布150 ~166MHz 的Pentium 处理器,集成了310 ~330 万个晶体管。 1996 年:Windows 95 OSR2 发布,修正了部分BUG,扩充了部分功能。 1997 年:Heft Auto 、Quake 2 和Blade Runner 等着名游戏软件发布,并带动3D图形加速卡迅速崛起。 1997 年1 月8 日:Intel 发布Pentium MMX CPU,处理器的游戏和多媒体功能得到增强。 1997 年4 月:IBM 的深蓝(Deep Blue)计算机战胜人类国际象棋世界冠军卡斯帕罗夫。 1997 年5 月7 日:Intel 发布Pentium Ⅱ,增加了更多的指令和Cache 。 1997 年6 月2 日:Intel 发布233MHz Pentium MMX 。 1998 年2 月:Intel 发布333MHz Pentium Ⅱ处理器,采用0.25 μm 工艺制造,在速度提升的同时减少了发热量。 1998 年6 月25 日:Microsoft 发布Windows 98,一些人企图肢解微软,微软回击说这会伤害美国的国家利益。 1999 年1 月25 日:Linux Kernel 2.2.0 发布,人们对其寄予厚望。 1999 年2 月22 日:AMD 公司发布K6-3 400MHz 处理器。 1999 年7 月:Pentium Ⅲ发布,最初时钟频率在450MHz 以上,总线速度在100MHz 以上,采用0.25μm 工艺制造,支持SSE 多媒体指令集,集成有512KB 以上的二级缓存。 1999 年10 月25 日:代号为Coppermine(铜矿)的Pentium Ⅲ处理器发布。采用0.18 μm 工艺制造的Coppermine 芯片内核尺寸进一步缩小,虽然内部集成了256KB 全速On-Die L2 Cache ,内建2800万个晶体管,但其尺寸却只有106 平方毫米。 2000 年3 月:Intel 发布代号为“Coppermine 128 ”的新一代的Celeron 处理器。新款Celeron 与老Celeron 处理器最显着的区别就在于采用了与新P Ⅲ处理器相同的Coppermine核心及同样的FC-PGA封装方式,同时支持SSE 多媒体扩展指令集。 2000 年4 月27 日:AMD 宣布正式推出Duron 作为其新款廉价处理器的商标,并以此准备在低端向Intel 发起更大的冲击,同时,面向高端的ThunderBird 也在其后的一个月间发布。 2000 年7 月:AMD 领先Intel 发布了1GHz 的Athlon 处理器,随后又发布了1.2GMHz Athlon处理器。 2000 年7 月:Intel 发布研发代号为Willamette 的Pentium 4 处理器,管脚为423 或478根,其芯片内部集成了256KB 二级缓存,外频为400MHz,采用0.18 μm 工艺制造 ,使用SSE2指令集,并整合了散热器,其主频从1.4GHz 起步。 2001 年5 月14 日,AMD 发布用于笔记本电脑的Athlon 4 处理器。该处理器采用0.18 微米工艺造,前端总线频率为200MHz,有256KB 二级缓存和128KB 一级缓存。 2001 年5 月21 日,VIA 发布C3 出处理器 。该处理器采用 0.15 微米工艺制造(处理器核心仅为2mm 2 ), 包括192KB 全速缓存(128KB 一级缓存、64KB 二级缓存),并采用Socket370 接口。支持133MHz 前端总线频率和3DNow!、MMX 多媒体指令集。 2001 年8 月15 日,VIA 宣布其兼容DDR 和SDRAM 内存的P4 芯片组P4X266 将大量出货。该芯片组的内存带宽达到4GB,是i850 的两倍。 2001 年8 月27 日,Intel 发布主频高达2GHz 的P4 处理器。每千片的批发价为562 美元