1971年.. 6月,湖滨学校把这位热爱计算机的数学奇才比尔·盖茨定为编制课程表程序的理想人物。这种课程表如果用人力来编写,非常复杂,而且还不可避免地要出现教室过份拥挤的现象。但是,盖茨拒绝了学校的这个安排。他还没有决定,程序编制在他的一生中将扮演什么样的角色。可是,由于一连串意外事件的发生,这个任务仍然落到了他的身上。湖滨学校的领导由于盖茨拒绝接受编制课程表程序的任务,便把这项工作交给刚到湖滨学校教数学的一位工程师去完成。不料他在一次空难中丧生。于是,学校领导再次征求比尔·盖茨和肯特·埃文斯的意见,是否同意接受这项程序编制任务。不幸的事故再度发生,肯特又在一次登山运动中死去。幸亏比尔不迷信,他从朋友死亡而产生的悲痛中恢复过来后,便要求保尔·艾伦来帮他的忙,和他一道搞这项程序的编制工作。保尔在.. 6月刚从中学毕业,便来帮助比尔,用.. FORTRAN语言(一种公式翻译程序设计语言——译者注)编制了课程表。保尔还记得当时的情况:在当时已经没有学生的学校里,他们夜以继日地为编制这项程序而忙碌着。他说:“这的确是一个有趣的问题,因为每个学生的课程都不一样,而我们必须保证每一堂课的人数都一样,而不致发生人数大多或太少的不均匀状况。”盖茨和艾伦在完成这项程序编制任务后,除获得了计算机使用时间外,还得到了.. 2400美元的现款。在.. 1971至.. 1972这个学年中,他们享用了好几个月的时间才把他们获得的计算机使用时间用光。后来,在对这种程序的陆续改良时,比尔把正经事和玩乐结合起来,只要有可能,就把他自己编排在全是女生、只有他一个男生的课堂里,他的座位周围全是漂亮的女生。交通数据公司1971年秋天,保尔·艾伦进入华盛顿州立大学,主攻计算机科学。但是,工作的世界仍然在吸引着他,他相信,他和盖茨在实际的工作中,定能一展他们的天才。他把他的一个有趣的想法告诉比尔,要他的朋友来帮助他完成。工作的世界仍然在吸引着他,他相信,他和盖茨在实际的工作中,定能一展他们的天才。他把他的一个有趣的想法告诉比尔,要他的朋友来帮助他完成。比尔对这个想法很感兴趣,他们两个人就想买一台计算机,但是,他们很快发现,迷你计算机的价格那时仍然贵得惊人。当时,保尔经常阅读许多电子学的杂志,发现英特尔公司(Intel)推出一种名叫8008的新型微处理器。微处理器是作为大型计算机主要部分处理器的微型化,大的或小的处理器的作用,是处理储存在计算机里的数据资料。例如,它能储存文件的文本并计算出预算的总数。以往在1969年,位于加利福尼亚州的英特尔公司已经成功地将数以百万计的微电子线路集成于一块硅芯片上,而过去这一整套线路和线圈要堆满整整一间房间。英特尔公司把它称为4004微处理器。4004微处理器的功能有限,不能用来处理编制的软件。因此,英特尔公司希望能把它应用于家用电器的控制,而不是用于控制计算机。1972年,4004微处理器的更新换代的新产品诞生了,这就是8008。虽然8008微处理器要有用得多,但仍然很难想象,这种芯片能处理具有任何实用功能的计算机程序。保尔对8008微处理器很感兴趣,首先试图说服比尔,由他们共同用这种芯片开发出一种编制程序的工具。他们选择了BASIC语言,这是一种在湖滨学校中广泛使用的编制计算机程序的语言。但是,比尔说,这种努力不值得,因为这种芯片的运算速度太慢。他的估计是正确的,这种微处理器在支持BASIC语言方面还不够有力。后来保尔发现,他们可以利用这种芯片来制造一种最低级的计算机,用来分析安装在西雅图市区街道交叉路口的灰色小匣中产生的交通数据。为了实现他们的计划,这两个朋友创建了一家名叫交通数据(Traf—O一Data)的公司。他们用360美元购买了英特尔公司生产的第一批8008微处理器中的一套。然后,他们请一位电子工程技术员将这套微处理器制成了交通数据公司的可以编制程序的机器。这台微型计算机的老祖宗毫不复杂,外表一点都不起眼,内部布满了杂乱无章的线圈。这台机器并不是想在市场上出售的产品,不过是一种给8008微处理器编制程序的工具。由于比尔和保尔的兴趣不同,两人在工作中也就形成了自然的分工,各人干自己最感兴趣的事。保尔当时还是华盛顿州立大学的学生,他利用大学的PDP-I0型计算机,用组合语言编制了一项程序,以模拟8008芯片的功能;比尔则根据保尔编制的模拟程序编制监测交通流量的程序。这个开发工作耗费了很长的时间,交通数据公司的人们是在创造前人从来没有做过的事业。这台机器建成和程序编制完成以后,从西雅图市街道交叉路口设立的小灰色匣子中产生的打孔纸条,便为这台机器提供数据,工作开始了。保尔和比尔还写信给美国和加拿大的其他地区负责监测交通情况的部门,向它们提供经过分析后的交通流量的报告。在1972至1973这一学年中,交通数据公司从马利兰州和英属哥伦比亚省等地区的订户那里,赚得了20000美元。1972年的美国总结竞选开始了,美国两党对垒的是乔治·麦戈文和理查·尼克松。当时,比尔是一名老资格的童子军,他在暑假中找到了一份在国会中当服务员的临时工作。他用每枚3美分的价格,买进了5000枚麦戈文竞选用的徽章。麦戈文竞选失败后,他的竞选徽章成了人们喜欢收藏的纪念品,比尔便以每枚.. 20.05美元的高价,把这些徽章卖给收藏家。在这次一本万利的买卖过程中,他的推销技巧和说服能力都得到了改进和提高。1972年的美国总结竞选开始了,美国两党对垒的是乔治·麦戈文和理查·尼克松。当时,比尔是一名老资格的童子军,他在暑假中找到了一份在国会中当服务员的临时工作。他用每枚3美分的价格,买进了5000枚麦戈文竞选用的徽章。麦戈文竞选失败后,他的竞选徽章成了人们喜欢收藏的纪念品,比尔便以每枚.. 20.05美元的高价,把这些徽章卖给收藏家。在这次一本万利的买卖过程中,他的推销技巧和说服能力都得到了改进和提高。1973年.. 1月,当时比尔还在高中学习,TRW公司(Thompson RamoWooldridge Inc,)向他提供了一个意想不到的机会。这家公司和美国国防部门签订了一项合同,要建立一个监测和控制沿太平洋西北部地区的所有水库大坝的计算机系统,哥伦比亚盆地也包括在这个地区以内。计划要用几台PDP-I0型计算机来分析这个地区的电力需求量,然后对这个地区的水库发电量进行控制,根据需要量来发电,达到供需平衡的目的。TRW公司负责编制供那些.. PDP-I0型计算机使用的合适的程序。好几个月以来,这家公司一直为PDP-I0型计算机软件中各种各样的“臭虫”产生的严重问题而苦恼,工作进度一再拖延,眼看就到了违约罚款的程度。这家公司无计可施,便只得在国际上招聘.. PDP—I0型计算机专家,寻找所有的合适人选,来解决这个难题。正在这个关键时刻,TRW公司的一位技术员发现了一本计算机中心公司的问题报告书。在这本书里,他找到了在.. PDP—I0型计算机软件上早已发现的令人吃惊的臭虫清单。他还注意到了几乎在这本书的每一页上都出现的两位.. PDP—I0型计算机专家的名字:盖茨和艾伦。TRW公司同位于波特兰德的信息科学公司对这两位程序编制人的专业才能进行了核实。在波特兰德是很容易找到他俩的。那两个少年到.. TRW公司去接受面试。保尔·艾伦当时已经对大学生活感到厌倦,没有费多少唇舌,他便接受了聘请,他对在私人企业任职越来越有兴趣。同时,由于湖滨学校是允许学生在高年级时同私人企业发生关系的,比尔·盖茨便在向学校提出申请后,很容易地被允许到.. TRW公司工作。他回忆道:“公司肯定不会料到,我们是那样年轻。”那两位程序编制人再次在不同的领域里施展他们的才能。艾伦是对被损坏的系统进行修理,使它恢复工作;而盖茨则从事数据的储存和运行时间的编码工作。盖茨和艾沦在.. TRW公司遇到了约翰·诺顿,他能记诵长达5000页的操作系统条例。这种才能使他俩感到吃惊。盖茨感谢诺顿帮助他提高编制程序的技巧。诺顿和盖茨一道检查盖茨编制的代码,进行修正和简化。尽管保尔和比尔的工作质量很高,但得到的仍然是学生工资。保尔说:“我们每星期的工资是.. 165美元。这是我们第一次获得支付工资的工作。我们在温哥华租了一间公寓,平时开销不大,因此,我们都觉得很满意。”由于比尔和保尔参加这项工作,大大地帮助了计划的最后完成,TRW公司得以如约完成合同,没有受到违约的惩罚。同时,盖茨和艾伦在空闲的时候,继续征求交通数据公司的交通统计资料的使用客户。但是,那年春天,他们却遭遇了意想不到的竞争对手:美国联邦政府。它决定免费提供类似的服务。这样,交通数据公司就只得关门大吉了。6月,比尔·盖茨从湖滨学校毕业了,准备进入大学。1973年夏天,亨纳威尔公司给他提供了位于华盛顿州的它的一家分公司的一个职位。因为亨纳威尔公司的确想聘用一位能全天工作的程序编制人。但是,比尔把这个工作职位介绍给了保尔·艾伦,艾伦接受了这个职位。6月,比尔·盖茨从湖滨学校毕业了,准备进入大学。1973年夏天,亨纳威尔公司给他提供了位于华盛顿州的它的一家分公司的一个职位。因为亨纳威尔公司的确想聘用一位能全天工作的程序编制人。但是,比尔把这个工作职位介绍给了保尔·艾伦,艾伦接受了这个职位。当比尔·盖茨在他生活的道路上彷徨的时候,有时产生一个颇有吸引力的想法:马上创建一家公司。但有时对他所想做的事又毫无把握。他对抽象数学和经济学特别感兴趣,但他也想将来成为一名律师。他最后决定进入哈佛大学。几个月以后,保尔·艾伦也设法转到了哈佛大学所在地的波士顿。当比尔于.. 1973年秋天进入哈佛大学的时候,他已经决定研究法律。他的双亲对他的决定喜出望外,庆幸他从事法律工作的事业心已经战胜了他儿童时代的“嗜好”。但是,他的心仍然没有进入法律界。他说,他无休无止地玩扑克牌,常常坐在他的房间里,“象一个在哲学思想上十分消沉的青年,试图摸索出生活的道路”。有时,他又沉湎于阅读小说。《麦田猎手》(Satcherin the Rye)、《单独的和平》(A Separate Peace)等小说对他特别有吸引力,因为这些小说描写的情节往往是:青少年都不愿随着岁月的流逝而长大成人,但又不得不因长大而面临各种各样的实际问题。在哈佛大学,比尔与史蒂夫·鲍尔默结识,成为好友。鲍尔默聪明过人,明快果断,有一次,他在大学的餐厅里把比尔的眼睛蒙上,然后把比尔介绍给他的朋友们,并要比尔发表对计算机性能的演讲。保尔·艾伦常常在晚上和周末去看望比尔,同比尔在创建计算机公司的问题上进行热烈的讨论。1974年,英特尔公司推出了一种新型微处理器.. 8080和.. 4004、8008微处理器比较起来,这种.. 8080芯片提供了能为广大的使用者编制计算机程序的可能性。因此,英特尔公司这次准备大力推广这种产品。保尔忽发奇想:他们应该如何来迎接这种微处理器的挑战,这个发明是否可以使巨大的处理器系统变得象火柴匣那样微小?一次革命已经开始,他们不能丧失这个机会。他对比尔说:“我们必须为.. 8080编制一个.. BASIC语言。”盖茨经过长时间的思考,对这样一个机会犹豫不决,并没有想出任何可以付诸实施的实际办法。他觉得,他们需要的是围绕8080微处理器制造的一台计算机。..他们这里犹豫不决,而远在千里之外的艾尔布科克,却有一位艾德·罗伯茨和他创办的微型工具和测距系统公司(Micro Instrumentation andTelemetry Systems,MITS)已经在迎接这个挑战了。第二部 BASIC语言起步第二部 BASIC语言起步年12月26日第三章阿尔特亚.. BASIC语言第三章阿尔特亚.. BASIC语言Packard)等几家计算机制造公司,统治着计算机市场。这些公司主要依靠大型计算机和迷你计算机的制造和销售,收入总额以十亿美元计。它们还没有意识到微处理器的巨大意义,而不过是在计划去使用它。这就为小型企业的发展,提供了一个戏剧性的机会。而小型企业的创建人果然很快就在技术上进行突破,根本性地改变了计算机的设计和使用的规则。有关计算机的专业杂志,在发展这种技术方面也发挥了重要的作用。早在个人计算机问世之前,《无线电子》、《大众电子》等杂志已经在微型计算机的潜在发展的可能性方面,煽起了人们的兴趣。当时,许多人都把计算机当成了解好的业余消遣,业余计算机俱乐部在美国各地兴起。其中最引人注目的是家酿计算机俱乐部(Homebrew Computerclub)。它于.. 1975年.. 3月创建于加利福尼亚州的门罗公园。这个俱乐部的早期成员中有史蒂夫·乔布斯和史蒂夫·沃兹尼亚克,他们后来创办了苹果计算机公司。当第一台微型计算机问世的时候,立刻引起了哄动,数以千计的计算机爱好者受计算机杂志报道的煽动,纷纷要求拥有这种计算机。MITS公司的第一台微机1974年,新墨西哥州阿尔布科克的一家小公司推出了第一台个人计算机,产生了真正的冲击作用。艾德·罗伯茨于1968年创力了微设备和测量系续公司,这是一家很小的电子公司,后来开始生产计算器。1973年,德克萨斯仪器公司(Texas,Instruments)进入了计算器市场,并采用了大削价的竞争政策。这种强有力的竞争严重地打击了微型工具和测距公司,仅仅一年以后,艾德·罗伯茨便跌到了破产的边缘。幸亏他头脑灵活,具备一种开创者的本能,使他对英特尔公司于.. 1974年.. 4月推出的.. 8080芯片产生了兴趣。罗伯茨深信,这种微处理器可以成为微型计算机的基础,便决定研制他自己的产品。产品制成后,他便把它称为阿尔特亚(Altair)。6个月来一直在寻找独家新闻的《大众电子》杂志发现了这个情况,便决定在.. 1975年:月号刊物的封面上报道这种产品。这期杂志于.. 1974年.. 12月中旬出现在报刊书摊上,醒目的大字标题是:“世界第一台微型计算机问世,向市场上的商用型计算机挑战。”杂志内刊载了一篇介绍阿尔特亚计算机的文章,并附带了一份向微型工具和测距公司邮购的定货单。这一报道引起了巨大的反响,定货单和付款支票象雪片一样飞向公司,使罗伯茨大喜过望。恰象《大众电子》杂志所报道的那样,阿尔特亚计算机称得上是一种微型计算机。它组装起来以后,看起来象一只金属匣子。它没有键盘,也没有检视显示器,数据资料的输入和输出,全凭一块开关控制板。匣子内部是两块逻辑线路板和一个电池。那两块线路板中一块是英特年公司生产的.. 8080芯片,另一块是容量为.. 256字节的存储装置。阿尔特亚计算机的购买者们只需支付.. 397美元,但同时需要拥有一副焊接工具和巨大的耐心。这台计算机必须仔细地一部分一部分地焊接起来,好几个小时才能完成。阿尔特亚计算机一旦组装成功后,另一个问题又出现了:它不能永久性地储存数据资料,而且,使用起来很复杂,要求使用人具有编制程序的专门知识。程序和数据资料输入计算机时,必须通过计算机前面的时节开关。程序指令的编制,必须使用机器语言,即一系列的0和1。这需要高度的技术知识和很熟练的灵巧手工。稍一错误,便要全部重新来过。阿尔特亚计算机的计算结果,以计算机前板上的灯光闪烁来表示。计算机一旦关闭,计算机中的程序和计算结果也就消失了,因为计算机的储存装置是一种不稳定的随机存取存储器(RAM)。阿尔特亚计算机尽管有这些缺陷,但仍然获得了意料之外的成功。它触发了微型计算机革命的开端。这种计算机价格低廉,是吸引众多购买者的主要原因之一。艾德·罗伯茨之所以能保持这种计算机以低廉的价格出售,是因为他同英特尔公司协商,能以低价购进8080芯片,每块8080芯片只需75美元,只有它的正常价格的三分之一。由于阿尔特亚计算机的购货定单每天都源源不断而来,罗伯茨的经济情况奇迹般地好转了,他已开始盼望更好的财务状况。数以千计的计算机爱好者一直梦想自己拥有一台个人计算机,当时有点近乎盲目地定购这种实际上不能使用的产品。但是,其中也有少数人,如史蒂夫·多姆皮尔等,实际上设法把阿尔特亚计算机派上了用场。多姆皮尔发现,在使用阿尔特亚计算机时,附近的无线电收音机便会受干扰。他便编制了一套程序,来控制频率和静电的存在时间,这样就能使计算机通过收音机演奏甲壳虫乐队(50年代英国首先流行起来的一种四重奏爵士乐队——译者注)的乐曲《山岗上的傻小子》。在1975年4月举行的一次家酿计算机俱乐部的集会上,多姆皮尔当场表演,启动计算机的开关把他编制的程序输入计算机,使它当众演奏了这首乐曲,使在场的人们惊奇得呆若木鸡。紧抓阿尔特亚提供的机会1974年12月,在一个寒冷的清晨,保尔·艾伦在哈佛广场偶然看到《大众电子》杂志关于阿尔特亚计算机的报道。他立刻跑去找比尔·盖茨,把这一令人难以置信的消息告诉他。一种价格便宜的微型计算机现在终究可以得到了!艾伦惊喜若狂,“这是第一台可以和专业计算机相媲美的计算机”。这本杂志中刊登的介绍文章中有一句话后来变得家喻户晓:“你自己动手制造阿尔特亚计算机。”艾伦对盖茨喊道:“看!这事终于发生了!我早就告诉你,这事总会发生的!我们可不能错过这个机会!”这些话说到了19岁的盖茨的心里去了。他和艾伦清楚地了解了这个时机的重要意义。正如盖茨在1990年接受马克·斯蒂文斯采访时所说的:“对我们来说比这计算机本身更令人激动的是,我们意识到个人计算机的奇迹就更出现了。”盖茨和艾伦决定对阿尔特亚计算机开发一种计算机语言。他们在经营交通数据公司时使用8008芯片获得的经验,以及他们在湖滨学校学习时使用BASIC语言时得到的知识,对他们目前的事业都极有价值。BASIC语言是约翰·凯曼尼和托马斯·科茨于1964年创制的。目的是使程序编制工作尽可能地变得容易掌握。因此,对阿尔特亚微型计算机采用BAS1C语言,是明显地顺理成章的。因为这种计算机的推销对象是广大的群众,而使用BASIC语言比其他任何计算机语言在编制程序时都要简单易行,并且要比微处理器的机器语言容易掌握得多。在阿尔布科克,艾德·罗伯茨看到购买阿尔特亚计算机的定货单从全美国各地飞来,心里不觉感到有点畏惧。他知道,一旦第一次热潮消退,如果要吸引更广大的消费者,便需要另创新法。为计算机提供一种简单的编制程序的语言,只有少数有天份的人才敢于使帛机器语言来编制程序,大多数人都对复杂的机器语言不愿问津。因此,如果能提供一种简便易行的程序编制语言,便能为阿尔特亚计算机开辟更广阔的天地,在统计、会计、文字处理等领域得到广泛的应用。不过,英特尔公司的代表对罗伯茨说,8080芯片对开动象BAs1C那样的计算机语言,还不够有力。罗伯茨表示同意,但仍希望有人能证明这种说法是错误的。比尔·盖茨和保尔·艾伦在看到了《大众电子》杂志上的文章一星期以后,打电话给微型工具和测距系统公司。他们对这家公司自我介绍说,他们是西雅图一家名叫交通数据公司的代表。比尔毫不迟疑地宣称,他已经使BASIC语言适用于阿尔特亚计算机,并询问罗伯茨,他是否对此感兴趣。微设备和测量系统公司的创办人艾德·罗伯茨接到过这种类似的电话,已经好几次了,现在对这个电话当然是将信将疑。他回答说:“我当然是感兴趣的。把你已经做成的给我看看。”不久,微型工具和测距系统公司接到了一封信,信封上的发信地址是交通数据公司。比尔和保尔在信中宣称,他们已经成功地研制出能在所有8080计算机上使用的BASIC语言翻译器,他们有兴趣通过微型工具和测距系统公司:以匣式磁带或磁片的形式,把这种软件的拷贝出售给计算机爱好者,每套拷贝收费50美分,如果罗伯茨感兴趣,就来联系。这封信激起了罗伯茨的好奇心。他立刻根据来信的信封上的电话号码挂了电话。哪里知道,电话打到了西雅图的一所私立寄宿学校里,接电话的人根本不知道BASIC语言翻译器的事。他觉得他这次又被那些显然是爱开玩笑的人耍弄了。值得庆幸的是,他很快又得到了交通数据公司正在活动的迹象。比尔和保尔正在努力工作使BASIC语言适合在阿尔特亚计算机上应用。他们首先碰到的大问题是他们没有一台阿尔特亚计算机。于是,他们决定再次采用他们曾经在交通数据公司时期很有成效的那种战略。他们利用哈佛大学的艾肯计算机实验室里PDP—10型迷你计算机来模拟阿尔特亚微处理器,以解决没有阿尔特亚计算机的难题。保尔在这方面是一个老手。在此之前,一位名收大卫·奥斯本的人曾经写过一本非常详细的8080微处理器工作手册。比尔和保尔获得了一本,连同《大众电子》杂志上的那篇文章,便成了这两个程序编制人的基本参考工具。他们开始研究8080微处理器的特点,保尔试图在数字器材公司的产品上编制程序,使它能象英特尔公司生产的芯片那样工作。他花了两个星期在PDP—10型计算机上开发出了阿尔特亚处理器的模拟器,以及为芯片编制程序用的组合器。这种组合器是一种输入组合语言以产生机器指令的中介体。在此期间,比尔为阿尔特亚计算机的BASIC语言编制了设计注意事项。当这两位朋友再次打电话给艾德·罗伯茨,告诉他们已经实际上成功地应用了那种语言的时候,他们根本还没有见过8080微处理器。罗伯茨这次在电话上问他们,他们是否可以到阿尔布科克来,表演一下他们编制的程序。比尔考虑了一下,回答说,他们可以在3个星期内到达阿尔布科克。阿尔特亚计算机的最大性能只有4千字节(4K),即约4000个字体,(在此后的10年内,国际商用机器公司推出的个人计算机和相容性的计算机,存储容量是阿尔特亚计算机的.. 160倍。)由于盖茨开发的语言必须能用来编制