第30章 真正的计算机(2/2)
机器的轰鸣声似乎大了一些。
卡片被一张张吞入,机柜上的指示灯开始疯狂闪烁,像是在进行一场无声的交响。
所有人的目光都聚焦在房间另一头的打印机上。
那是一台笨重的电传打字机。
“咔哒,咔哒,咔哒……”
打印机的字头开始移动,敲击在白色的纸带上。
所有人都屏住了呼吸。
张汉-玉的心脏也提到了嗓子眼。
然而,打印机只打出了一行谁也看不懂的乱码,然后就停下了。
“ERROR:SYNTAXFAULT”
失败了。
周围传来几声压抑的窃笑。
林志远的声音不大不小,刚好能让张汉玉听见。
“我还以为多厉害呢,原来也是个银样镴枪头。”
张汉玉的脸颊有些发烫。
他知道自己大意了。
理论和实践,果然隔着一道鸿沟。
王教授走了过来,拿起那张打印出乱码的纸带。
“语法错误。”
他看向张汉玉。
“你的逻辑没错,但你跟它说话的方式,它听不懂。”
“机器是死的,人是活的。回去再想想。”
他的语气里没有责备,也没有鼓励,只有一种对事实的陈述。
张汉玉没有辩解。
他拿起自己的那叠废卡片,走到角落,一张一张地仔细检查。
他回忆着刚才的每一个步骤。
是哪一个指令用错了?
还是哪个参数的格式不对?
他的大脑像一台计算机一样,飞速地回溯,排查。
十分钟后,他找到了问题所在。
在输出指令里,他调用了一个高级语言的函数,但在这台老旧的机器上,必须使用更底层的硬件端口地址。
这是一个极其微小的细节,教科书上一笔带过,但他却忽略了。
他重新回到穿孔机前。
这一次,他的动作更加谨慎。
当他拿着新打好的卡片再次走向操作台时,林志远已经得意洋洋地完成了他的程序。
“教授,我好了!”
王教授接过他的卡片,放入机器。
“嗡——”
“咔哒,咔哒……”
打印机上,清清楚楚地打出了一个阿拉伯数字。
“2”
林志远兴奋地挥了一下拳头。
“看见没!满分!”
他挑衅地看了一眼张汉玉。
王教授点了点头,却没什么表情。
“很好。”
“下一个。”
他示意张汉玉。
张汉玉沉默地将自己的卡片放了进去。
所有人都觉得,他只是在做无用功。
最好的成绩已经被林志远拿走了。
“嗡——”
指示灯再次闪烁。
打印机的字头也再次移动。
“咔哒,咔哒……”
这一次,纸带上出现的,不是一个孤零零的“2”。
而是一行完整的算式。
“1+1=2”
机房里一片死寂。
连嗡鸣声都仿佛消失了。
林志远的笑容僵在了脸上。
所有人都目瞪口呆地看着那行简单的算式。
同样是计算1加1,但张汉玉不仅算出了结果,还把计算过程原原本本地打印了出来。
这其中的程序复杂度,完全不是一个量级。
王教授快步走到打印机前,一把扯下那张纸带。
他那双总是波澜不惊的眼睛里,第一次露出了震惊。
他死死地盯着那行字,然后猛地抬起头,看向张汉玉。
“这个输出格式,你是怎么做到的?”
张汉玉平静地回答。
“我没有直接调用结果,而是将数字‘1’,符号‘+’,‘=’,还有最终的运算结果,分别存入四个独立的内存地址,再按照顺序,依次输出到打印端口。”
王教授的瞳孔骤然收缩。
这个操作,已经涉及到基础的内存管理和汇编语言的思路了。
这绝不是一个刚接触计算机的本科生能想出来的。
“你以前接触过计算机?”
“没有。”
张汉玉摇了摇头。
“只是在图书馆的书上看到过类似的概念。”
王教授沉默了。
他看着眼前的这个年轻人,高大,结实,穿着洗得发白的旧衣服,眼神却像机房里最深邃的黑暗,闪烁着逻辑的光芒。
他以为他只是一块好铁,没想到,是一块未经雕琢的璞玉。
“你叫什么名字?”
“张汉玉。”
王教授点了点头,将那张写着“1+1=2”的纸带,仔细地折好,放进了自己白大褂的口袋里。
他没有再宣布谁是满分。
他只是转身,对所有人说了一句。
“下课。”
学生们陆续离开,还在议论着刚才发生的一切。
张汉玉却留在了原地。
他走到那台冰冷的DJS-130前,伸出手,轻轻地,抚摸着机柜上冰冷的金属外壳。
他能感觉到,金属
一个全新的世界,正透过他的指尖,向他敞开大门。