跳转到主要內容

第二十章 布尔运算

作者:吾道长不孤
“不对吧?”尤基皱着眉头:“师父,好像不是這样的。在棋牌类游戏裡面……還有,還有驾驶裡面,电脑比生物脑厉害多了。” 向山点了点头:“沒错,但是一個下棋厉害的计算机,也只能下棋。它永远不会懂‘为什么要下棋’這件事,甚至不一定知道自己在“下棋”。如果它的造物主不做出指示,那么它一辈子也别想再去做第二件事。” 這应该是……是很久很久之前的事情了?向山觉得,這可能是自己出生之前就发生了的歷史。那個时候,有一位指挥家。他是一位21三体综合征患者——所谓的“先天愚型儿”。或许他仅仅是因为出生在音乐世家,所以将“模仿指挥动作”当成一种游戏,但他确实以“指挥者”的身份登上了舞台。那么他的大脑之中是否存在“音乐”呢? 或许确实,這個可怜人心中确实知晓什么是音乐的吧。 但在“音乐”之外的事情,他就不怎么能够理解了。 而计算机内孕育的智能,比這個更加极端。毕竟,即使是先天愚型儿,也知道饿了、渴了。身体不舒服会哭。但哪怕棋力足以碾压棋圣的AI,也不会产生“我還需要电源”或者“我就是想要更多计算资源”的想法。 “实际上,计算机所能做的事情,从来沒有超出人脑的部分。纸笔运算……见鬼,你好像不知道什么是‘纸’。”向山摇了摇头,随手抄起一根铁杄,在地上写出qandp。 两個值,1或0,TRUE或者FALSE。 二生三,三生万物。 计算机的一切都是从這裡出来的。 “我现在要教你的东西,叫做‘布尔运算’。”向山如此說道:“人类用一根铁杄,就可以在地上完成布尔运算,从而模拟计算机的任何程序——不,這裡应该反過来。计算机不過是代替了人的手,在地上写布尔运算的式子。它们只不過是比人类手写更快、更快。仅此而已。” “這個运算的方式,诞生自伟大的乔治·布尔。在乔治·布尔之前,莱布尼茨和巴贝奇也在做同样的事情——他们尝试用机器进行计算。巴贝奇或许一度接近這個境界,但是终归是沒有达到。而布尔和所有的前人都不一样。就好像艾萨克·牛顿试图在時間与空间的维度中描述物质运动的轨迹一样,布尔在尝试描述精神运动的轨迹。這是开天辟地的成就。当然,布尔算法和真正的人类思维的差距,就好像牛顿力学和真实世界的差距一样。但是,這已经是起步了。” “在布尔之后,人们意识到,齿轮与杠杆可以执行计算、神经網络可以执行计算、不断开合的电路可以执行计算,就算是一堆化学设备,也一样可以执行计算——布尔算法,就将人类思维的一角,拆解成了机器可以理解的东西。” 人类用电路模拟神经網络、执行布尔计算的歷史,甚至比冯诺依曼架构更早——早在1943年,神经生物学家沃伦·麦卡沃克和数学家沃尔特·皮茨就制造了第一個可以执行布尔计算的人工神经網络。 而在布尔的时代之前,還有一個发明家,叫做约瑟夫·雅卡尔。他发明了一种全新的织布机。這种织布机可以用打孔的卡片操纵机器上的针线,编织经纬。相似的东西,歷史上独立出现過很多次。這种“打孔卡片”甚至可以追溯到中国的东汉时期。 這就是图灵机“打孔纸带”的祖先,是只有若干個字节的、最原始的存储器,是机器们最早的“记忆”。 而希尔伯特为了研究纯粹数学而提出的计划,催动了图灵机的诞生。 最后,這些结果,最终汇聚到另一個叫做冯·诺依曼的人手中。 于此,人类歷史上前所未有的工具诞生了。人类的社会、生活乃至政治、军事都为之改变。 “但是,工具总归是工具。”向山如此告诫自己的弟子:“它的本质,仍旧是创造了几千、几万條手臂,为你来执行布尔运算。计算机能够做到的,你自己用布尔运算能够做到的,只不過计算机更快——当然,這种‘快’已经达到了本质上的改变。” “对于一般的使用者来說,你只需要将任务交给這‘若干的手臂’,就可以等待结果了。但這样是练不成内功的。内功有成者,就等若是能最大限度发挥這无数臂膀的力量,甚至将意志传递到這些手之间。” “所以,你必须从布尔运算开始学习。” 在内功的领域,数学是“道”,而布尔运算就是“一”。 道生一,一生二,二生三,三生万物。 布尔算法本身不复杂,只是逻辑学的一些延伸。高中程度的数学差不多就够学個入门了。 剩下的,就是大量练习了。 向山花了点時間,向尤基讲述這些問題的精要所在,然后在脑子裡直接编写了一個习题册,点对点传输到尤基的脑芯片裡。 尤基离开房间的步伐非常沉重。 向山满意的点了点头。他心裡有种感觉——這种事情他早就想做一次看看了。 不知道为什么,可能是過去的经历对他造成的影响? 反正他還蛮高兴的。 尤基终于做完了习题,回到了自己的房间。 然后他发现,房间裡面的气氛完全变了。 向山闭着眼睛,如同冥想一般对着那台终端。终端的屏幕之上,无数的符号刷新一般出现又消失。更多的代码覆盖在代码之上。 而与那终端相连的犬型义体,则在做着各种动作。 向山在参悟每一行代码的意义,然后用自己的代码替换原本的代码。 他要尝试掌握這种不曾见過的组件。 “尤基,习题已经做完了么。”向山依旧保持原本的姿势:“你的脑部芯片是可以随时取下的类型嗎?现在方不方便给我一片看看?” 尤基点了点头:“可以是可以……” 他低下头,后侧的颅骨打开。随后,一块备用芯片弹了出来。 义体的驱动芯片永远都有两块或以上。当其中一块出了BUG崩溃之后,另一块就会瞬间接管身体,同时,出BUG的那一块就会快速Watchdog,重新启用。 和向山那种一体式的颅骨有所不同。尤基這种现代式的人工颅骨开启本来就很方便。 尤基将自己的备用芯片递给向山:“师父,你這是干什么?” “很快就弄好了。弄好了再說给你听”向山摇了摇头。最开始沒有注意到這一点,确实是他太大意了。這個时代,上位者对弱者的生杀予夺,比他想象中還有严重。他当初只是发现舒尔茨医生請自己上網,所以就天真的断定绝大多数赛博义体都沒有时刻连接網络。 在收尤基为弟子的时候,他只想着避开了村裡的监控路线。 但之前镇长的话却提醒了他。 不管社会是怎样的,永远不要小视暴政者对人的掠夺。 实际上,应该還存在一個普通人并不知道、或者根本无法使用的频段。在這個非民用的频段上,所有的义体都是连着網络的——只是那些义体的使用者并不知道。 唯一值得庆幸的是,现在的那些“真正统治集团”,似乎人手不足,或者有其他客观上的困难,沒有时时刻刻的监视着每一個人。 ——啧……過去应该還沒有這個严重。 ——但是,這個极端状态,我应该是设想過的。 “练武不练功,到头一场空”。内功设计之初,就包含了对抗這种状态的想法。 因此,在给自己恢复了些许内功之后,向山就给尤基搭建抵御外邪的力量,清除芯片之中的后门。 很快,向山就将芯片整個检索了一遍。果然不出他所料,這個玩意裡面,确实存在几個他沒有见過的协议,指向了某些具备信号发射机能的端口。 這個端口是用短波通信,信号较为微弱,数据传输能力有限,估计也就只能上传低质量的音频或者图像。 但這就意味着,统治者确实可以在任何时候,对任何個人进行窥探。 “很好,至少值得庆幸的是,這個时代并不存在军队和警察,领主自由裁量权太大……他们最多只能意识到,我可能是個侠客。” 向山很快就在尤基的芯片裡面写入了防火墙,使它拒绝那個特定端口的远程访问,并发送伪造的图像。然后他抹去了另外几個协议。 当然,在做這些事之前,他先做好了备份。 向山将芯片還给尤基,道:“自己试一试,有什么不对的地方跟我說。如果沒問題的话,等会再帮我一個忙。” 向山自己现在驱使义体,是靠镇长赠送的那一枚廉价芯片。而那一枚驱动芯片裡,同样有可能存在后门。向山的人工颅骨不像尤基這样可以自由开合。如果沒有特殊的工具,他就必须得靠别人帮忙,才能将插进去的芯片取出来。 這就相当于将自己的大脑暴露给其他人。向山必须有一個可以信任的助手,才敢做這种事。 另外,他也必须杜绝“进行到一半的时候,助手被人远程脑控,手指一個哆嗦戳进自己脑子”的状况。因此他才优先给尤基准备了“灌顶”。 尤基一面将自己的数学作业传输给向山检查,一面按照向山的吩咐,跑跑跳跳,测试一下驱动芯片是否有BUG。 人类在很早的时候就学会了“不要追求沒有BUG的编程”這件事,只要程序能跑起来,存在BUG也无所谓。 高级语言按照“类型论”的分法,大致可以分为“类型不安全语言”“类型安全语言”与“强规范化语言”。强规范化语言倒是可以保证“不会出错”,這类语言对于任何程序都能给出唯一结果并且停机,绝对不会陷入死循环。但也正因为强规范化语言舍弃了“循环”的概念,失去了图灵完备,所以任何错误系统根本不予识别不准运行。 简单来說,强规范化语言就是“程序跑起来就绝对不会出错,裡面但凡有一丢丢错误就跑不起来”的状况。 而侠客们,则偏向于使用“类型不安全语言”。這种语言的使用者,日常就处于“我的写的代码不能跑了?這是为什么?我写的代码能够跑了?這是为什么?”的疑惑当中。這种语言很容易就产生“无法预料的错误”——這种“无法预料”可以說是数学本身注定的,在程序跑起来之前,就连编写者本身也无法预测。 当然,這种“难以理解”,对敌人来說也是一样的。 向山宁可麻烦一点,在写任何程序之前都做好几次测试,也要選擇“类型不安全语言”。 但向山的水平似乎真的還可以。尤基的驱动芯片依旧可以正常的驾驭义体。
首頁 分類 排行 書架 我的

看小說網

看小說網是您最喜歡的免費小說閱讀網站。提供海量全本小說免費閱讀,所有小說無廣告干擾,是您值得收藏的小說網站。

網站导航

热门分類

© 2023 看小說網 版权所有