比尔盖茨48年前手搓的Basice语言今天被微软开源

微软开源48年前比尔·盖茨撰写的BASIC代码,这段仅6955行的汇编语言曾是早期个人电脑的基石,现在任何人都可以自由使用和研究这份数字遗产。

1975年,比尔·盖茨和他小伙伴在新墨西哥州阿尔伯克基的一间小办公室里,用汇编语言一行一行敲出了改变世界的第一行代码。他们当时不会想到,这段代码不仅会成为个人计算机时代的起点,更会在半个世纪后,被它的诞生地——微软公司重新捧出,以开源的方式交还给全世界的开发者。

这个被重新发布的项目,是微软早期为MOS 6502处理器开发的BASIC解释器版本1.1的完整源码。如今它静静地躺在GitHub上,使用MIT许可证开放下载,提交时间甚至被幽默地标记为“48年前”。

微软这波操作真是复古到骨子里了:他们把比尔·盖茨当年手搓的代码给开源了!

就在这两天,微软突然宣布要把Microsoft BASIC for 6502 Version 1.1的源代码全部公开,扔到了GitHub上,还故意把提交时间戳设置成"48年前"。这种幽默感倒是很符合极客们的口味——明明能直接传代码,非要玩个时空穿越的梗。

说起这个代码的来历,那可是微软的"祖传宝贝"。当年二十岁出头的比尔·盖茨和公司第二位员工瑞克·韦兰一起用汇编语言写了这玩意,总共才6955行。以现在的标准来看简直少得可怜,随便一个APP的代码量都能碾压它。但在1970年代,这段代码可是点燃个人电脑革命的火种。

这段代码运行的MOS 6502处理器当年可是性价比之王,价格只有竞品的一半不到。后来这颗芯片被装进了雅达利2600、任天堂红白机和康懋达电脑里,几乎统治了早期游戏机和家用电脑市场。最戏剧性的是,微软当年以2.5万美元一次性价格把BASIC授权给康懋达使用,结果对方靠着这个系统卖了几百万台电脑——这笔买卖现在回头看简直亏到姥姥家。

其实微软的第一个产品是为英特尔8080写的BASIC解释器,这次开源的是经过盖茨和康懋达工程师约翰·费根斯修复bug的改进版。虽然在GitHub上标的是1.1版,但当年出厂时贴的可是BASIC V2的标签。

微软这次开源确实来得不容易。这些代码之前都是零零散散地流落在网络上,现在官方亲自下场打包奉上,还贴心地用了MIT许可证。这意味着什么?意味着以后谁都可以随便用、随便改,甚至拿去赚钱都没问题。要是再晚几年,说不定原始文档都找不齐了,更别说搞清授权问题。

现在的小年轻程序员可能都看不懂汇编语言了。毕竟这是个连专业人士都开始用AI写代码的时代,谁还愿意去啃这种底层代码?但老炮们知道,这段代码里藏着早期程序员的智慧结晶。虽然没法直接在现在的电脑上运行,但通过模拟器或者FPGA设备,还是能重温当年的编程体验。

想想也挺有意思:当现在的程序员在纠结该用哪个JavaScript框架时,当年的程序员可是在内存只有几KB的环境下抠每一个字节的优化。这种在极限条件下的编程思维,说不定能给现在的开发者带来些新启发。

微软这几年倒是越来越放开,先后开源了GW-BASIC、MS-DOS和Altair BASIC。这次把6502 BASIC也放出来,算是凑齐了"上古编程语言全家桶"。不过说真的,现在还有多少人会去研究这些老古董?大概只有硬核技术史爱好者和怀旧老程序员了吧。

但无论如何,这种开源历史代码的行为值得点赞。这不仅是在保存数字遗产,更是在向现代程序员展示:没有这些简陋却精巧的底层代码,就不会有今天丰富多彩的数字世界。