7899:完全用汇编语言编写的现代64位操作系统BareMetal-OS的代码行数
啊,汇编。所有高级语言的那一套——程序结构、数据处理、大量函数——都被剔除掉了。你得到的只有转移指令和字节,幸运的话,还有一个减法命令。确实,直接操纵计算机状态也可以十分强大,但几乎没有人会选择使用汇编语言来编写代码。
所以,当发现3款(而不是只有1款)精心打磨的游戏居然能够将汇编语言的乐趣融入编程时,我吃了一惊。要说明的是,这些游戏都不涉及为真正的硬件编写汇编语言。它们都采用了带有最小指令集的虚拟系统。尽管如此,它们确实抓住了汇编编码的精髓,从简单命令中提炼出复杂行为。
机器内部:《人力资源机器》假装是一间办公室
第一款游戏叫《人力资源机器》,最初是由明日公司于2015年推出的,现在已经有了Windows版、Mac版、Linux版,以及新的任天堂游戏主机Switch版本。在这款游戏中,玩家扮演的是一个办公室职员,必须处理“进”(in)传送带上送来的数字和字母,然后将需要的结果放上“出”(out)传送带。游戏开始后,你只有两条工作指令。随着游戏的发展和挑战复杂性的提高,你将获得更多的指令。挑战的难度范围从输出一对输入数字中的较大数,到对可变长度序列进行分类排序。
由于《人力资源机器》非常抽象,有的人将它直接作为解密游戏来玩,但还是有点丈二和尚摸不着头脑。但那些懂的人会发现这个办公室职员是个寄存器,在办公楼的临时工作空间是个随机存取存储器,而许多挑战其实是经典的计算机科学入门问题。因为这款游戏一开始使用的命令非常少,界面又直观,因此是新手了解处理器内部运作的好方法。不过,这款游戏的情节在激励玩家不断升级方面做得还不够好。
《TIS-100》模仿80年代微型计算机界面
Zachtronics公司的《TIS-100》游戏解决了这一问题,只不过该游戏针对的是更有经验的玩家。这款游戏最初同样于2015年推出,目前已经有了Windows版、Mac版、Linux版和iPad版。2016年推出的iPad版《TIS-100P》可能最清楚地表明了该游戏的目标玩家,这可以从屏幕上显示的单色文本以及看上去(和敲击声)就像只能连接到老式微机上的屏幕键盘看出来。确实,这个游戏是充满怀旧风格的杰作,它还提供了一份可下载的手册。任何在20世纪80年代编过程的人都能体会到一种认同感:手册的设计完全就是真实手册中最重要部分的第2代或者第3代影印版。
故事的情节是,你从兰迪叔叔那里继承了一台TIS-100计算机,通过使用编程语言来解决问题,使计算机内存中被损坏的部分恢复原状,为找出这台机器的最初目的提供线索。TIS-100计算机有一个不同寻常的并行架构,由可以相互传递信息的计算节点构成。这些谜题的复杂性以相当快的速度逐渐增加,但都是可以做到的。如果你想寻找一款能够带你找回在那个时代编程感觉的浪漫游戏,那么《TIS-100》就是你的不二选择。
《深圳I/O》结合了编程和布线
不过,Zachtronics公司的最新游戏《深圳I/O》却可以立刻把我们拉回现代。这款游戏于2016年11月推出,有Windows版、Mac版和Linux版。在这款烧脑游戏中,你是一名来自西方的电子工程师,决定前往如今的成品制造城市——中国深圳。这款游戏的关键游戏机制与《TIS-100》一样:为互连模块设计编程来完成任务;但《深圳I/O》包含大量不同的模块(由人为生成的数据表完成),例如收音机和显示器模块。在这款游戏中,最重要的目标是使信号的计时恰到好处,从而使你游戏角色打造的各类电子设备通过输入/输出测试。其中许多产品都非常有趣,电子工程师会发现自己能认出很多东西,甚至为了使定时循环完全正确,偶尔还需要对空操作(NOP)指令进行正确部署。
作者:StephenCass
版权所有 © Copyright © 2002-2030 龙辉游戏资讯网站地图