一盏绿茶提示您:看后求收藏(第501章 分析代码,重生之王牌黑客,一盏绿茶,新笔趣阁),接着再看更方便。
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
所谓读书百遍,其义自现,程序也是如此,反复读过几遍后,肖远越来越觉得这两端程序有些非比寻常,并有种隐隐的预感,读懂这两端程序将是他解开种子程序以及god程序反常表现的关键所在。
终于,肖远从这些代码中找到了最关键的逻辑,却被他的发现下了一跳,甚至有些难以置信,因为这段代码竟然用一种很巧妙的方法完成了一个远程跳转,跳转到目的地已经超出了god创造的世界的内存范围,它所使用到的指令竟然是工作站cpu的一段特殊的指令序列,而这段指令肖远事先根本就不知道,更不会写到程序中。
肖远心中疑惑,如果不是他有非常丰富的阅读代码的经验,手边又有cpu指令集的详细资料可查,这段代码究竟是干什么用的,就算他读上一百遍,恐怕也不会知道的。
“只是种子程序的代码里怎么会有这样的代码段了?”
肖远对这个现象倍感不解,觉得不把这个现象搞清楚,会很不甘心,于是他再次将没有反汇编之前的种子二进制代码拿了出来,决定从二进制代码入手,试试能找到什么端倪不能。
直接阅读二进制代码显然是不可行的,好在肖远手里还有另外一个工具,这个工具的界面分成左右两栏,左栏是二进制代码,右栏是二进制代码对应的汇编代码,两边对照着阅读,就不是那么困难了。
可惜这样反复读了两遍,肖远还是没有发现什么规律,随即意识到自己的研究思路有点儿问题,种子的这段程序一定是进化而来的,也就是说它的代码本身也是在不断演变的,自己这样静态的看,本身就有问题。
既然意识到了问题,肖远马上改变了策略,将多个内存样本中的种子程序的二进制代码截取了出来,然后对这些不同时间点的二进制代码进行了纵向比对,重点关注了那段奇异代码的演化过程,并不断对比手边的cpu指令手册。
经过一番比对,肖远又想到种子程序的进化还受到god程序的影响,于是又将god程序代码拿来,横向纵向做了很全面的分析比对,两个小时后,他终于搞明白了这段代码的来历,心中却暗暗惊异。
首先要确定的一点,这段代码并不是凭空产生的,种子程序虽然具有一些初步的进化功能,但是还没有智能化到自主的分析cpu指令集,并加以利用的逆天程度,但是它的来源却也让肖远感到了一场惊奇,因为这段代码是从god程序中学习而来的,而god的程序中的这段代码来自于汇编时,汇编程序对它进行的自动优化。
更让肖远感到惊讶还有另外一件事情,种子程序学习到的这段代码竟然利用了god程序自身的监控机制存在的一个漏洞,执行后悔进行跨区段远程跳转,将自己复制到了god程序的代码段中,而肖远设定的种子规则中,有一条是禁止种子进行自我复制繁衍,因此当种子将自己复制到god代码段中时,世界中的种子自动进行了自我销毁。
种子侵占了god程序的代码段,结果导致与god程序代码段有一部分被破坏掉了,从而失去了一部分功能,而这部分功能恰恰是世界的平衡修复功能,因此才会出现种子突然消失后,世界中虽然存在大量不平衡,但是god却没有再对其进行修复的现象。
而种子在进入god程序的代码段之后,自身安全的到了保障,再也没有被修改或抹杀的危险存在,于是按照肖远最初设定的进化模型,它的自我进化也就停了下来,代码也不再运行。
“真想不到啊,这段程序竟然能够找到god程序的一个漏洞,究竟是巧合呢,还是它自我进化的原因,我需要再做一下试验……”
肖远发现了有些很有意思的东西,进而产生了一些新的想法,于是再做几个试验,加以验证,如果这些想法成立的话,他觉得自己似乎找到了一个非常实用的大杀器。
本章未完,点击下一页继续阅读。