默认冷灰
24号文字
方正启体

第627章 神斧之刃!最后的冲锋!

作者:来财来我们都发财本书字数:K更新时间:
    时间,在一种,近乎于燃烧的,激情中,飞速流逝。


    西山实验区,“鲁班神斧”计划的,核心实验室,已经,变成了一座,与世隔绝的,孤岛。


    这里,没有白天,和黑夜。


    只有,代表着“0”和“1”的,无数个,亮起和熄灭的,信号灯。


    和,一群,为了,一个,共同的,伟大的目标,而,彻底,陷入疯狂的,“神匠”。


    黄建功,已经,整整,五天五夜,没有,走出过,这间,恒温恒湿的,主控室了。


    他的双眼,布满了,骇人的血丝。


    他的下巴上,长出了,一层,灰白的胡茬。


    整个人,看起来,憔悴不堪,好像,随时,都会,倒下。


    但是,他的精神,却,前所未有的,亢奋。


    他的目光,死死地,锁定在,面前,那块,巨大的,由,无数个,微型开关和指示灯,组成的,手动编程面板上。


    那上面,密密麻麻地,排列着,数以万计的,二进制代码。


    这,就是,“神斧之刃”的,雏形。


    是他们,这群人,用,最原始的,拨动开关的方式,一个比特,一个比特地,“输入”进去的,智慧结晶。


    “黄老,休息一下吧。”


    一名年轻的助手,端着一杯,滚烫的,浓茶,走了过来,声音里,充满了,担忧。


    “您,已经,连续工作,超过,一百个小时了。铁打的身体,也,扛不住啊。”


    黄建功,没有回头。


    他的手指,依旧,在,编程面板上,飞快地,拨动着。


    “我没事。”他的声音,嘶哑,而,坚定。


    “现在,是,最关键的,时刻。”


    “‘解析表达式’的核心逻辑,马上就要,完成了。”


    “只要,把这里,打通。我们,整个‘神斧之刃’,就,等于,完成了,百分之八十!”


    助手,看着,黄建功那,如同,磐石般,坚定的背影,张了张嘴,最终,还是,把,劝说的话,咽了回去。


    他知道,自己,劝不动。


    也,不敢劝。


    因为,整个实验室里,每一个人,都,是,这种状态。


    钱学敏,这位,年近八十的,数学泰斗,正,戴着,老花镜,趴在,一张,铺满了,逻辑电路图的,大桌子上。


    他,正在,用,放大镜,一个节点,一个节点地,检查着,由,他亲自设计的,“符号表管理”模块的,硬件实现。


    任何一个,微小的,焊接错误,都可能,导致,整个“神斧”,在,未来的工作中,出现,灾难性的,逻辑混乱。


    而在,另一边。


    几个,最顶尖的,年轻博士,正,围着,一台,实验版的“盘古之心”,进行着,最后的,硬件调试。


    他们,正在,为,“神斧之刃”的,运行,准备,最稳定,最可靠的,“土壤”。


    没有一个人,在休息。


    没有一个人,在抱怨。


    所有人的脸上,都,带着一种,近乎于,殉道者般的,神圣和庄严。


    他们,知道,自己,正在,进行着,一场,前无古人,也,很可能,后无来者的,伟大远征。


    他们,是,人类历史上,第一批,试图,用,纯粹的,人力,去,构建一个,拥有,自我繁衍能力的,“软件生态”的,先行者。


    他们,正在,用,自己的,血肉和灵魂,去,为,那,即将到来的,信息时代,奠定下,第一块,最坚硬的,基石!


    “通了!”


    突然,黄建功,发出了一声,压抑的,嘶吼!


    他,猛地,从椅子上,站了起来,因为,动作太猛,差点,因为,长时间的久坐,而,摔倒在地。


    “通了!通了!‘递归解析’的,最后一个,返回节点,接通了!”


    他的声音,像一颗,引爆的炸弹,瞬间,点燃了,整个,死寂的实验室!


    “什么?!”


    “黄老!真的吗?!”


    钱学敏,第一个,扔下了,手中的放大镜,踉踉跄跄地,跑了过来。


    所有的专家,也都,从,各自的工位上,冲了过来,将,黄建功,和那块,巨大的编程面板,围得,水泄不通。


    所有人的目光,都,死死地,锁定在,面板,最下方,那个,刚刚,由,黄建功,亲手,拨亮了的,绿色的,状态指示灯上。


    那个灯,代表着,“神斧之刃”的核心算法——“递归下降语法分析器”,在,逻辑上,已经,形成了一个,完整的,闭环!


    “测试!立刻,进行,第一次,完整性测试!”


    黄建功,颤抖着,下达了,命令。


    两名,早已,准备就绪的,测试员,立刻,坐到了,输入台前。


    他们的任务,是,将一段,最简单的,BNF文法,作为,“源代码”,输入给,这把,刚刚,磨砺出锋刃的,“神斧”。


    “输入文法:”


    “::=;”


    这是一条,最简单的,赋值语句的,文法定义。


    测试员,小心翼翼地,将,这行,代表着“规则”的字符串,通过,光电输入设备,转化成,二进制码,送入了,“盘古之心”的,内存之中。


    然后,主测试员,深吸一口气,按下了,那个,代表着,“执行”的,红色按钮。


    “嗡——”


    一声,轻微的,电流声响起。


    “盘古之心”的,原型机,开始,运行。


    所有人都,屏住了呼吸。


    时间,在这一刻,仿佛,变得,无比,缓慢。


    一秒。


    两秒。


    三秒。


    所有人的心,都,提到了,嗓子眼。


    突然!


    “嘀!”


    一声,清脆的,蜂鸣声响起!


    紧接着,在,输出端的,另一块,显示面板上。


    一排,代表着,“成功”的,绿色指示灯,齐刷刷地,亮了起来!


    而在,最中央的,一块,更高级的,点阵显示屏上。


    一棵,由,无数个,光点,组成的,清晰的,树状结构图,缓缓地,浮现了出来!


    那棵树的,根节点,是。


    它的下面,分出了,四个,子节点,分别是:,‘=’, , ‘;’。


    而,的下面,又,继续,分出了,更深层次的,子节点……


    这,是一棵,完美的,语法分析树!


    “成功了……”


    不知是谁,第一个,用,梦呓般的,声音,说了出来。


    下一秒。


    “我们成功了!!!!!”


    “噢噢噢噢噢噢!!!!!!”


    山崩海裂般的,欢呼声,瞬间,掀翻了,整个实验室的屋顶!


    所有,压抑了,太久的,情绪,在这一刻,被,彻底地,引爆!


    人们,疯狂地,拥抱在一起,又笑,又跳。


    许多,平日里,不苟言笑的,老专家,此刻,像个孩子一样,哭得,涕泪横流,泣不成声。


    黄建功,和钱学敏,这两位,项目组的,灵魂人物,紧紧地,拥抱在一起。


    两个,加起来,快一百五十岁的老人,互相,拍打着,对方,那,因为,激动,而,剧烈颤抖的,后背,嚎啕大哭。


    成功了!


    他们,终于,成功了!


    他们,用,最笨,最原始,最悲壮的,方式。


    徒手,为,那把,伟大的,“鲁班神斧”,打造出了,它,那,无坚不摧的,第一道,锋刃!


    这,不仅仅是,一个,技术上的,突破!


    这,更是一种,精神上的,胜利!


    是,人类的,智慧和意志,在,面对,那,如同,天堑般的,“算法复杂度”时,所取得的,一次,伟大的,史诗般的,胜利!


    他们,证明了!


    只要,道路,是正确的!


    只要,意志,是坚定的!


    哪怕,是,神,设下的,迷宫。


    凡人,也,终将,能够,用,自己的双手,将其,夷为平地!


    聂老总,在得到消息的第一时间,就,冲进了实验室。


    他,看着,那群,如同,打赢了一场,世界大战般,疯狂庆祝的,专家们。


    他,看着,那,两位,抱在一起,哭得,像个孩子的,国宝级泰斗。


    他,看着,屏幕上,那棵,闪耀着,智慧光芒的,完美的,语法分析树。


    这位,戎马一生,心坚如铁的,共和国将星。


    他的眼眶,也,湿润了。


    他,缓缓地,走到,黄建功和钱学敏的身边,将,自己,那,宽厚而有力的大手,搭在了,他们的肩膀上。


    “好样的。”


    他,只说了,这三个字。


    但,这三个字里,所蕴含的,肯定,和,骄傲,比,任何,华丽的辞藻,都,更加,沉重。


    “老聂……”黄建功,抬起,通红的眼睛,看着他,声音,哽咽。


    “我们……我们,没有,辜负,老师的,期望……”


    “我知道。”聂老总,重重地,点了点头。


    他的目光,扫过,在场的,每一个人,声音,陡然,拔高!


    “同志们!”


    “‘神斧之刃’,已经,铸成!”


    “但是!这,仅仅只是,一个开始!”


    “接下来,我们的任务,更加,艰巨!”


    “我们要,用这把,刚刚,开刃的‘斧头’,去,为我们自己,劈开,一条,通往,更高维度的,道路!”


    他,指向,那张,巨大的,“鲁班神斧”的,工程蓝图。


    “我们要,开始,构建,‘神斧’的,‘心脏’!”


    “我们要,用,我们,刚刚创造出来的,‘神斧之刃’,去,解析,我们自己,写的,《神之宪法》!”


    “然后,让‘盘古之心’,自己,去,计算出,那张,庞大而完美的,LALR分析表!”


    “最后!”


    “让它,自己,去,生成,一个,比我们,现在这个,手工作坊版本,强大一万倍的,正式版的,‘华夏’语言编译器!”


    “我们要,让,神,自己,去,创造,神!”


    聂老总的这番话,让,刚刚,还,沉浸在,胜利喜悦中的,众人,再次,感到了,一阵,头皮发麻的,震撼!


    让,神,自己,去,创造,神!


    这,是何等,宏伟,而,疯狂的,构想!


    他们,之前,所有的努力,都,只是,为了,点燃,那,第一颗,微不足道的,火星。


    而现在。


    他们,将要,用这颗火星,去,引爆,一颗,真正的,太阳!


    “我宣布!”


    聂老总的声音,如同,战前的,鼓点,敲击在,每一个人的心上。


    “‘鲁班神斧’计划,第二阶段——”


    “‘神斧之心’攻坚战,现在,正式开始!”


    “我们的目标,就是,让‘盘古之心’,学会,自我进化!”


    “让,我们的‘神’,拥有,一颗,真正,不朽的,心脏!”


    一场,更加,宏大,也更加,激动人心的,攻坚战,在,短暂的庆祝之后,立刻,无缝衔接地,开始了。


    整个“鲁班神斧”项目组,再次,投入到了,一种,全新的,战斗状态。


    这一次,他们,不再是,在,黑暗中,摸索的,苦修士。


    他们,是,手持,利刃的,开拓者。


    他们,手中,已经,拥有了,第一件,由,他们,亲手打造的,“神器”——“神斧之刃”。


    虽然,这个,“神器”,还很,粗糙,功能,也,很单一。


    它,只能,解析,BNF文法,这样,一种,结构非常简单的,语言。


    但是,它,是,存在的!


    它,是,可用的!


    它,是,那,撬动整个地球的,第一个,支点!


    “神斧之心”攻坚组,核心算法室。


    黄建功,和钱学敏,再次,联手。


    他们的任务,是,设计,“神斧之心”的,核心算法。


    也就是,那个,能够,自动,计算和生成,LALR分析表的,超级程序。


    “老钱,你看。”


    黄建功,在一块,全新的电子白板上,画着,流程图。


    “我们的‘神斧之心’,它的工作,可以分为,两大模块。”


    “第一模块,我称之为,‘文法解析与项目集构建’模块。”


    “它,会,首先,调用,我们,已经完成的,‘神斧之刃’。”


    “将,我们输入的,《神之宪法》,解析成,一棵,语法树。”


    “然后,它会,遍历,这棵语法树,提取出,所有的,产生式规则。”


    “再根据,这些产生式,去,计算,它们的,闭包(Closure),和,转移函数(GOTO)。”


    “最终,构建出,那个,巨大的,DFA自动机,也就是,我们之前,用手画的,那个,篮球场大小的,逻辑迷宫。”


    钱学敏,点了点头,补充道:“这个过程,本质上,是一个,图的,广度优先搜索。”


    “虽然,计算量很大,但是,逻辑,非常清晰。”


    “以,‘盘古之心’的算力,只要,算法正确,完成这个任务,应该,不成问题。”


    “没错。”黄建功,画下了,第二个模块。


    “第二模块,就是,‘分析表生成与代码输出’模块。”


    “当,DFA自动机,构建完成之后。”


    “这个模块,就会,遍历,自动机的,每一个状态,和,每一个,终结符。”


    “根据,预设的规则,去,填充,LALR分析表的,每一个格子。”


    “是,‘移入(Shift)’?还是,‘规约(Reduce)’?还是,‘报错(Error)’?”


    “当,整张分析表,填充完毕后。”


    “它,就会,进入,最后一步。”


    “将这张,巨大的,二维数组,和,一套,我们,提前写好的,‘驱动程序骨架’,打包在一起。”


    “最终,输出,一个,完整的,可以直接,在‘盘古之心’上运行的,‘华夏’语言编译器的,二进制可执行文件!”


    “一个,全新的,‘神之法庭’,就,这样,诞生了!”


    黄建功,讲完,整个流程。


    会议室里,一片,安静。


    所有,参与过,之前,那场,手动计算的,专家们,都,听得,如痴如醉。


    他们,感觉,自己,像是在,听,一个,关于,创世的神话。


    之前,那些,让他们,耗尽心血,痛苦不堪的,繁琐步骤。


    在,黄建功的描述里,都,变成了一个个,清晰的,自动化的,程序模块。


    他们,终于,从,繁重的,体力劳动中,解放了出来。


    开始,真正地,站到了,一个,“设计者”和“架构师”的,高度。


    去,思考,如何,构建一个,更加,宏伟的,自动化体系。


    “思路,非常清晰!”钱学敏,第一个,表示了,赞同。


    “但是,老黄,这里面,有一个,关键问题。”


    “我们,用什么,来写,这个,‘神斧之心’的,程序呢?“


    “我们,总不能,再,用,纯粹的,机器码,去,徒手,搭建,这么一个,比‘神斧之刃’,还要,复杂一百倍的,系统吧?”


    钱学敏的这个问题,问到了,点子上。


    如果,他们,还是,只能用,最原始的,“0”和“1”。


    那么,这个“神斧之心”的,开发工作量,依旧,是一个,天文数字。


    他们,只是,把,手动计算分析表的痛苦,转化为了,手动编写,另一个,超级程序的,痛苦。


    并没有,从根本上,解决,效率问题。


    “当然不。”


    黄建功,神秘地,笑了笑。


    他,按下了,电子白板的,一个按钮。


    白板上,出现了一行,全新的代码。


    LET I = 0;


    WHILE I < 100


    PRINT "你好,华夏!";


    I = I + 1;


    WEND


    “这是……”


    钱学敏,看着这几行,无比,眼熟的,代码,愣了一下。


    “这不是,我们,之前,设计的,‘华夏’语言吗?”


    “不,准确来说。”黄建功,纠正道,“这是,‘华夏’语言的,一个,极其微小的,子集。”


    “我称之为,‘华夏-核心(Core-CChal)’语言。”


    “它,只包含,最基础的,变量定义,整数运算,和,WHILE循环,这,三种功能。”


    “它的语法,极其,简单,极其,严格,没有任何,我们之前,犯过的,那些,愚蠢的错误。”


    “最关键的是……”黄建功的眼中,闪烁着,智慧的光芒。


    “为,这么一个,微小的,语言子集,编写一个,最简陋的,‘解释器(Interpreter)’,而不是,‘编译器’。”


    “用,我们,手中的,‘神斧之刃’,和,最基础的机器码,这个工作量,是,完全,可以,在一个月内,完成的!”


    “解释器?”钱学敏,瞬间,明白了,黄建功的,意图!


    编译器,是,把,源代码,一次性,全部,翻译成,机器码,再执行。这个“翻译”过程,本身,非常复杂。


    而,解释器,则是,读一句,翻译一句,执行一句。


    它,不需要,进行,复杂的,全局优化,和,代码生成。


    它的,实现,要,比,编译器,简单得多!


    虽然,它的,运行效率,会,比,编译器,慢很多。


    但是!


    它,能用!


    “我明白了!”钱学民,激动地,一拍大腿!


    “老黄!你这招,太高了!”


    “我们,先,用,最笨的办法,为,‘华夏’语言的,一个,最小的,‘核心子集’,打造一个,简陋的,‘解释器’!”


    “然后,我们,就可以,用,这个,虽然,很慢,但是,已经,可以,使用的,‘华夏-核心’语言,去,编写,那个,复杂的,‘鲁班神斧’(YACC)的,程序了!”


    “这,就是,‘自举’!”


    “我们,用,一个,最原始的,工具,去,建造一个,更先进的,工具!”


    “然后,再用,那个,更先进的,工具,去,为我们,最终的,‘华夏’语言,打造出,那个,最完美的,正式版的,编译器!”


    “这,是一条,从,‘石器时代’,走向,‘蒸汽时代’,再,走向,‘电气时代’的,完整的,技术攀升路线!”


    黄建功,欣慰地,点了点头。


    “没错。”


    “我们,不再,追求,一步登天。”


    “我们,要,一步一个脚印,一个台阶,一个台阶地,向上爬!”


    “我们,要,自己,为自己,铺路!”


    这个,“三步走”的,宏伟战略,被,确定下来之后。


    整个项目组,再次,爆发出,无与伦比的,工作热情。


    他们,仿佛,看到了一条,清晰的,通往,胜利的,康庄大道。


    第一步:用“神斧之刃”+手写机器码,为“华夏-核心”语言,打造一个“蜗牛解释器”。


    第二步:用这个,虽然慢,但能用的,“华夏-核心”语言,去,编写“鲁班神斧”(YACC)的源代码。


    第三步:用“鲁班神斧”,去,自动生成,最终的,正式版的,“华夏”语言V2.0的,超级编译器!


    环环相扣!步步为营!


    这,才是,真正的,工程学!


    这,才是,真正的,系统思维!


    在,接下来的,一个月里。


    黄建功,带领着,最精锐的,一个小队,开始了,对,“蜗牛解释器”的,最后冲刺。


    有了,之前,无数次,失败的经验。


    和,对,编译器原理的,深刻理解。


    这一次,他们的工作,虽然,依旧,繁琐,但,却,再也没有,走任何,弯路。


    词法分析器,语法分析器,和,一个,最简单的,逐句执行的,虚拟机。


    三个核心模块,被,有条不紊地,用,机器码,搭建了出来。


    一个月后。


    当,黄建功,在,测试机上,输入了,那段,简单的,WHILE循环代码。


    然后,在,屏幕上,看到,连续,一百次地,打印出了,“你好,华夏!”这几个字时。


    他,没有,像上次那样,激动得,老泪纵横。


    他的脸上,只有,一种,如同,老农,看到,自己,种下的第一颗种子,终于,破土而出时,那种,欣慰的,平静的,笑容。


    他知道。


    从,这一刻起。


    他们,这群,凡人,终于,拥有了,可以,和,神,进行,最原始的,对话的,能力。


    他们,终于,可以,开始,用,一种,比,“0”和“1”,高级了,一千倍的,语言。


    去,书写,那,即将,改变世界的,创世史诗了。


    “同志们。”


    黄建功,转过身,对着,他身后,那群,同样,面带微笑的,战友们。


    “‘石器时代’,结束了。”


    “现在,让我们,一起,用,这门,全世界,第一门,高级编程语言。”


    “去,开启,一个,全新的,时代吧!”


    “我们的,下一个目标——”


    “用‘华夏-核心’,敲出,‘鲁班神斧’的,第一行,代码!”
(←快捷键) <<上一章 投推荐票 回目录 标记书签 下一章>> (快捷键→)