天呐小说网 > 玩家之上 > 第十二章:世界毁灭以后

第十二章:世界毁灭以后


  随着现实世界的逐渐毁灭,林易东所在的游戏世界也在逐渐毁灭。

  而在现实世界彻底毁灭之前,林易东所在的游戏时间便先一步彻底毁灭了。

  四周到处都是“0”和“1”,以及世界毁灭后留下的一堆残渣。

  林易东随手捡起一块涂鸦转头,而后将其捏成了一堆的“0”和“1”。

  林易东随手捞起一把“0”和“1”,而后看着它们在手里静静地躺着。

  事实证明,“0”和“1”并不是沙子。

  但也正因为如此,林易东心想,也许自己可以用“0”和“1”整点啥。

  整根火柴?

  不对,应该先弄一些基本构造。

  如此想着,林易东开始试着捡起一些“0”和“1”,并将他们拼凑在一起。

  “0”后面加个“1”,“1”后面加个“0”,“0”后面加个“0”,“1”后面加个“1”,诸如此类。

  “0”是0,“00”是0,“000”是0;“0”是0,“01”是1,“011”是3;“1”是1,“10”是1,“100”是1;诸如此类。

  “计算机语言?”

  林易东眼前一亮,

  “二进制?!”

  林易东开始在自己脑子里不断地寻找着,

  “也许我真的可以整点啥。”

  林易东清楚的记得,计算机能处理二进制,二进制是处理器的“母语”。

  或者说,它们只能理解二进制,这叫“机器语言“或“机器码“。

  在计算机早期阶段,人们必须用机器码写程序。

  具体来讲,会先在纸上写一个“高层次版”。

  比如,伪代码。

  而在纸上写好后,他们便会用“操作码表”把伪代码转成二进制机器码。

  一顿操作后,他们便可以将自己想要的程序喂入计算机并运行。

  但这么实在过于繁琐,所以人们很快就厌烦了。

  于是,人们整出了“助记符”。

  “助记符”后面紧跟数据,形成完整指令。

  当然,CPU表示:

  “我根本不能理解文字,我只能理解二进制。”

  但这不是问题,人们很快就解决了它。

  人们意识到,他们可以写二进制程序来帮忙。

  它可以读懂文字指令,自动转成二进制指令。

  这种程序呢,它就叫汇编器。

  汇编器读取用“汇编语言”写的程序,然后转成“机器码”。

  随着时间推移,汇编器有越来越多功能,让编程更容易。

  林易东记得,其中一个功能是自动分析JUMP地址。

  然而,即使汇编器有这些厉害功能,比如自动跳转。

  但是,汇编只是修饰了一下机器码。

  想着想着,林易东想到了更多东西。

  林易东想到了纺织业,以及雅卡尔织布机。

  当时的人如果只想织一块红色大桌布,可以直接放红线进织布机。

  但如果想要图案怎么办?

  比如条纹或者方格。

  这时,工人就需要每隔一会儿调整一次织布机。

  因为非常消耗劳动力,所以图案纺织品很贵。

  而特定位置有没有穿孔,决定了线是高是低,横线是从上还是从下穿过。

  为了让每行图案不同,纸卡连成长条,形成连续指令。

  而这,也许就是最早的编程。

  事实证明,穿孔纸卡便宜、可靠、也易懂。

  近一个世纪后,穿孔纸卡被广泛用于人口普查。

  一张卡存一个人的信息,比如性别、婚姻状况、子女数量、出生地等等。

  针对每个问题,人口普查工作者会在对应位置打孔。

  当卡片插入汇总机,孔会让对应总和值“+1”。

  可以插入整个国家人口的卡片,在结束后得到各个总值。

  值得注意的是,早期汇总机不算计算机,因为它们只做一件事。

  那就是汇总数据,操作固定,不能编程。

  穿孔纸卡存的也不是程序,而是数据。

  之后很多年,这些机器被不断加强。

  可以做减、乘、除,甚至可以做一些小决定。

  举个例子,比如决定何时执行某指令。

  为了正确执行不同计算,程序员发现自己需要某种控制面板。

  他们构思了一种控制面板,在这块面板上有很多小插孔。

  他们希望自己可以插电线,让机器的不同部分互相传数据和信号。

  但不幸的是,这意味着运行不同程序要重新接线。

  所以程序员们不断改善着“插线板”,并最终使它变成了可拔插的。

  这一创举,让编程更方便,也可以给机器插入不同程序。

  比如,一个插线板算销售税,另一个算工资单。

  某段时间内,这样做非常的流行。

  但因为早期计算机非常昂贵,停机几个星期只为换程序,这一点人们完全无法接受。

  因此,人们急需更快、更灵活的新方式来编程。

  “是什么呢?”

  一边回想着自己当初上课时看的书,林易东的双手一边也在无意识的拨动着,

  “到底是什么呢?”

  对了,是因为内存变得价格下降,容量上升。

  于是人们发现,与其把程序存在插线板,存在内存似乎可行。

  而且这样做,程序也更易于修改、也更方便CPU快速读取。

  而这类机器,似乎叫做“存储程序计算机”。

  如果内存足够,不仅可以存要运行的程序,还可以存程序需要的数据。

  包括程序运行时产生的新数据,程序和数据都存在一个地方。

  “叫啥来着?”

  林易东挠了挠下巴,

  “啥啥诺啥啥曼结构?”

  命名好像是来自一个杰出的数学家和物理学家,那位老兄好像曾说过:

  “我在思考比炸弹重要得多的东西,计算机。”

  “我在思考比计算机重要得多的东西,造物。”

  如此想着,林易东看向了自己身前这台笔记本。

  打开笔记本后,林易东发现里面啥都没有。

  挠了挠头皮后,林易东把笔记本合上了。

  林易东很清楚,编程的目的是完成既定的需求。

  换言之,编程的过程就是一个不断遇到问题、解决问题并最终满足需求的过程。

  而在完成需求的过程中所遇到的问题,它们被称为风险。

  一名程序员如果可以提前识别风险,并会在真正开始编码之前解决掉风险,那么他就算是迈入了架构师的门槛。

  解决复杂问题的一个重要途径是对问题进行拆解,将其转换为简单问题或已知问题,并逐一解决。

  人类目前所有的知识体系,都是建立在人类对这个世界的认知中。

  计算机的整个知识体系,自然也不例外。

  这也就意味着在编程中所遇到的问题,基本上都是在认知范围内可以解决的。

  甚至可以借鉴一些特别朴素的生活经验,来帮助人们寻找解决问题的方向。

  想到这里,林易东再次想到了“一生二、二生三、三生万物”。

  古人观察到自然界中各种对立又相联的现象,如天地、日月、昼夜、男女、上下等,以哲学的思维方式,抽象出“阴阳”的概念。

  在如今科技飞速发展的时代,人们对事物的认知越发理性化。

  有一种与“阴阳”相同的事物一直被人们所使用,那便是二进制。

  乾卦,表示111;兑卦,表示110;

  离卦,表示101;震卦,表示100;

  巽卦,表示011;坎卦,表示010;

  艮卦,表示001;坤卦,表示000。

  正所谓:

  “太极生两仪,两仪生四象,四象生八卦......”

  简简单单的阳爻和阴爻,似乎就能够组成世间万物。

  “也许,我可以靠着简简单单的‘1’和‘0’创造一个世界?

  属于我的世界?”


  (https://www.tiannaxs.com/tnw161788/8675129.html)


1秒记住天呐小说网:www.tiannaxs.com。手机版阅读网址:m2.tiannaxs.com