《你好,我最愛的人》1052.第1026章 她家霍少棒棒噠(第三更大章
第1026章 她家霍少棒棒噠(第三更大章求月票)
“何教授,就是這樣……昨晚花了我的電腦一晚上的時間,還是什麽都查不到……”顧念之都有些沮喪了。
她還從來沒有碰到過這種情況。
何之初輕輕咳嗽一聲,對顧念之說:“念之,我想問問你,你對Prolog這種編程語言熟悉嗎?
”
“Prolog?
Programming-in-logic?
”顧念之迅速反應過來,“知道啊,但是這種編程語言運用並不廣泛,還處於實驗室階段。
”
“那你知道它為什麽運用並不廣泛?
”何之初像是在課堂講課一樣啟發顧念之的思維。
“Prolog,也就是Programming-in-logic,顧名思義,它是一種基於邏輯理論的編程語言,也就是智能程序的一種。
現有的電腦硬件水平有限,不足以支撐這種編程語言的大規模運用,所以實際運用基本為零。
”
“對,那它跟普通的編程語言有什麽不同?
”何之初擡眸看著窗外的陽光燦爛,眯了眯眼。
“呃,何教授是在考我嗎?
”
“你不是號稱天才電腦小能手嗎?
我看看你的基本知識掌握得怎麽樣。
”何之初清淺地笑了笑,修長潔淨的手指將窗簾放下,走到自己的書桌前坐下,打開了電腦。
顧念之嘻嘻笑了一聲,說:“好吧,我是這樣理解的。
普通編程語言,程序員佔有絕對主導地位。
他的代碼一行行明明白白,都是給電腦的指令。
而Prolog這種邏輯編程語言,卻是給電腦設定邏輯規則,然後讓電腦根據邏輯規則自行判斷如何進行下一步程序。
”
“舉例來說,用普通編程語言讓電腦計算公式,程序員教電腦先乘除,後加減。
電腦嚴格按照程序員設定的計算順序進行計算。
從這個角度來說,電腦執行程序員的命令,永不出錯。
出錯的隻能是程序員寫錯了程序。
”
“而Prolog這種邏輯編程語言,是按照邏輯規則進行數據處理,並不是簡單的先加減後乘除。
”
“最簡單的邏輯關系是這樣的,先設定小紅是人,小麗也是人,兩人互相喜歡。
再給出判斷規則:互相喜歡的人是朋友。
那麽當你輸入小紅喜歡小麗,小麗喜歡小紅,電腦就會得出結論:她們是朋友關系。
然後按照朋友關系進行下一步推理運行。
”
何之初滿意地點點頭,“不錯,深入淺出,是這個道理。
但是,這是最基礎的描述。
——你用Prolog編過程嗎?
”
顧念之想了想,搖頭說:“試過幾次,但沒有系統地大規模編過程。
”
她從趙良澤那裡學到的是最實用的黑客技術,這意味著她對現有廣泛運用的程序研究得更多更透徹。
因為黑客本質說白了,就是破解功能。
最強大的黑客,可以破解一切程序。
而智能編程語言,基本上沒有實際運用,也就不需要破解,因此顧念之對這一方面了解得比較粗淺。
“太可惜了,如果有機會,你多用Prolog編程,有些問題就不成為問題了。
”何之初含蓄地提醒她。
顧念之一時沒聽出來何之初的言外之意,她聳了聳肩,不以為然地說:“可是智能程序跟計算機的人工智能息息相關,在人工智能取得突破性進展之前,這些智能編程語言隻能是小打小鬧,幹嘛要花時間在這上面?
等人工智能大行其道之後,我再來研究如何破解也不遲啊。
”
何之初頗不讚成地搖了搖頭,“念之,據我所知,這種智能編程語言,在有些國家的軍方實驗室裡,已經是半成品了。
——軍方的半成品,你知道是什麽概念嗎?
”
顧念之一下子卡殼了。
何之初的身份地位,讓顧念之不能對他說的任何一句話等閑視之。
顧念之突然若有所悟。
她想到剛才何之初提到的Prolog這種編程語言,雖然她隻有粗淺的了解,但是這些粗淺的了解包括了這種智能編程語言最核心的規則。
而何之初的提示,也像在顧念之面前打開了新世界大門。
她定定地看著電腦上她琢磨了一整個上午的源代碼,好像明白了什麽。
“念之?
”何之初半天沒有聽見顧念之說話,有些擔心地叫了她一聲。
顧念之回過神,欣喜萬分地說:“何教授你太厲害了!
我覺得我已經找到問題所在了!
對不起我要找bug了,等我找到bug,我請何教授吃飯!
”
“真的?
你可別哄我。
”何之初清冽冷漠的臉上露出一絲淡淡的笑意,那笑意既輕且淺,就像春天零星的雨水落入清澈的蔚藍湖水中蕩起的細小漣漪。
顧念之連連點頭,“絕不食言!
食言讓我長成個大胖子!
”
“嘖嘖,你對自己真夠狠的,連我都怕了。
”何之初淡淡打趣她兩句,就掛了電話。
看著眼前的電腦,何之初想了一下,點開了一個不常用的程序……
……
顧念之掛了電話之後,盯著電腦顯示屏足足半個小時,坐在那裡一動不動,就如泥塑木雕一樣。
其實她的腦子裡正飛快地運轉著,回想著如何使用Prolog這種智能邏輯編程語言,以及如何破解這種智能邏輯編程語言。
不過破解的第一步,是探測。
何之初的話,讓顧念之有了一種新的設想。
一個普通程序裡,如果夾雜有Prolog,或者跟Prolog類似的編程語言,會是什麽情況?
她和趙良澤都找不出來的bug,是不是跟Prolog這種智能編程語言有關?
!
又過了半個小時,顧念之全部想透徹了,才拿起鼠標,打開自己的編程本,開始寫程序。
這一次,她把自己查驗bug的小程序進行了改裝,把智能編程語言也當做是一種bug進行查找。
查找的依據就是,凡是用邏輯設定進行運行的源代碼,都是bug。
因為普通編程語言從來不用邏輯設定編寫源代碼。
改裝之後,再重新對趙良澤給她的源代碼進行查驗。
這一次顧念之沒有睡覺了,她一直坐在電腦前,眼睛都不眨地看著自己的程序運行查找。
不得不說,趙良澤給她的監控軟件的源代碼確實太厲害了。
幸虧她在霍紹恆官邸的這台電腦功能更加強大,才能進行這樣高負荷的運算和檢測。
盡管如此,也花了她幾乎十二個小時,才完成整個檢測。
她的中飯和晚飯都是在臥室吃的。
整整12個小時,顧念之腳不出戶,除了去門口拿勤務兵送來的午飯和晚飯,她幾乎沒有離開電腦一步路。
晚上十一點,她的程序終於傳來大功告成的叮鐺聲。
她從來沒有看到電腦顯示屏上出現的大大“Done”這麽高興過。
顧念之長長籲了一口氣。
點開程序的error-report,她看到以前空空如也的驗錯報告裡,出現了幾行指令,頓時喜笑顏開。
昨天晚上她的程序查了一夜,可是一個錯誤都沒有查出來。
那個error-report裡什麽都沒有,顧念之卻一點都不高興。
現在看見error-report裡出現了真正的錯誤指令,她卻高興得不得了,也是醉了。
顧念之興奮地閱讀驗錯報告,越看越興奮,越看越激動。
“我擦!
還有這種操作?
!
”
“居然能在普通程序語言裡設定一個基於Prolog智能邏輯編程語言的遞歸(recursion)程序!
”
“……這是在一群一個指令一個動作的傻子中安插了一個中二選手,悄悄地給傻子們發號指令啊……”
顧念之看得心潮澎湃,目不暇接。
就好像在隻會“說一是一,說二是二”的源代碼裡,突然多了一種代碼,告訴它們,當一出現的時候,可以原地不動,當二出現的時候,可以回到一。
如果既不是一,也不是二,那就照原指令運行。
這特麽就是在既定的“一、二”兩種情況之間設定了一個邏輯死程序啊!
關鍵是用了智能邏輯編程為基礎,讓這種邏輯死不會成為死循環的病毒程序,所以不會被軟件的使用人發現。
“真是太厲害了!
誰這麽天才啊?
!
”
顧念之顧不得半夜三更,激動地給何之初打電話:“何教授!
我找到bug了!
果然有人在普通編程語言裡夾雜了幾行prolog指令!
——何教授您太厲害了!
您才是天才!
真正的電腦小能手!
”
何之初剛睡了,被顧念之的電話吵醒,他也不生氣,淡淡地笑了一下說:“能夠被天才電腦小能手誇獎,我不勝榮幸之至。
”
顧念之笑得很開心,“何教授太謙虛了,這個問題難倒我們很多人,沒想到您居然一下子就看出了問題的本質。
我想問問您,你為什麽會知道是這個原因呢?
您對電腦好像也很精通哦!
”
何之初眼神閃了一下,從容不迫地說:“我也是站在巨人的肩膀上。
——我曾經讚助過一個國家的軍方實驗室,看見他們做過這方面的測試。
”
“喔咧!
明白!
”顧念之知道何之初說的是哪個國家,她心照不宣地閉了閉眼,“看來,我們要趕超的路還很長啊……”
“也不長了。
”何之初悠然地靠坐在床上,“其實你說你們有人提出這個問題要麽是電腦問題,要麽是軟件問題,已經指出了問題的核心。
相信那個人隻要再多想一陣子,就能想出問題的關鍵。
”
因為隻有智能編程語言才能真正驅使硬件為軟件服務。
顧念之一下子覺得與有榮焉。
她家霍少就是這麽棒棒噠!
※※※※※※※※※※※※※※※※※※※※※
這是第三更3100字了,也是大章哦!
提醒親們的月票和推薦票哦!
早上第一更是兩更合一,所以這更是第三更,沒毛病2333333~~~
麽麽噠!
(本章完)