第548章 技術宅

今天一章,明天補上。

周圍的每一寸空間似乎都堆放着各式各樣的電子設備和元器件,光線昏暗,擁擠不堪,林鴻覺得自己彷彿來到了大陸某個城市中城隍廟的電子市場。

走了一段路程之後,他看到,和電腦有關的電子配件和元器件逐漸多了起來。

前面,一個前額劉海染成黃色的青年正在店鋪中玩着電腦遊戲。

這個時候,走在前面的黃越突然站住了,他轉頭對廣永元道:“按照老規矩。”

說完,他便獨自一人先朝前面走了。

“老規矩?”林鴻用疑惑地眼神看了廣永元一眼。

廣永元只好解釋道:“要想進入這個圈子,必須證明自己的技術已經達到這個水平。雖然他們都認識我,但他們都是死腦筋,只認技術不認人。”

繞來繞去,林鴻總算明白,要想繼續向前走,他必須通過他們設置的考驗,頗有點闖關的意味。

“有意思。”林鴻笑笑,對此並不在意,問道,“都有些什麼項目?”

廣永元道:“編程、破解以及網絡滲透。當然,並不一定要全部過關,只要其中一項能夠得到他們的認可就行了。你肯定是沒有問題的,只是走個過場罷了。”

廣永元已經見識過林鴻的破解技術,連《英雄無敵》這樣難啃的骨頭林鴻都三下五除二不費什麼力氣就搞定了,更何況是他們的入門考驗?

這個時候,之前正在玩遊戲的染髮青年已經退出遊戲,他一甩額頭的黃髮,對林鴻道:“請吧。”

第一道關卡,編程。

林鴻也沒有什麼廢話,坐到了剛剛青年的座位,他看到,顯示器中已經出現了一道題目。很顯然,他們對於這種事情已經非常熟悉,擁有了自己一套固定的考驗流程。

給林鴻出的題目爲“使用基本運算來編寫一個你所可能實現的效率最高的平方根函數”。

平方根在數學中是一個非常重要同時也非常複雜的運算,在計算機中實現這種函數通常比較困難,所以編程語言一般都會對這些函數進行封裝,程序員在編程的時候,如果涉及到平方根運算,直接調用函數庫中的函數就行了。很少有人會懂得底層到底是如何實現的。

而且,能夠實現是一方面,能不能做到運算效率高效又是另外一方面。

程序的運行效率,往往就是高手和菜鳥之間的重要區別,真正的黑客,編程的時候。不僅僅只是將功能實現,還會追求最高效率,有時候可能只是一個符號的變化,其執行效率便天差地別。

執行一次的區別可能看不出來,可是如果循環一千次,一萬次呢?

高手和菜鳥編寫的程序,在效率上往往有着很多倍的差距,要想編寫出高效優雅的程序,必須有着對編程語言和計算機底層的本質理解。同時還得擁有豐富的編程經驗,在這方面可做不得假,實踐是唯一提高自身實力的方式。

林鴻知道,求平方根的運算,有一個算法叫做牛頓迭代法,其原理爲:

如果一個數爲X,假設它的平方根爲Y, 如果Y的平方和X相差大於某個給定的誤差,就繼續假設下一個值,如此持續下去,直到最終得到在允許誤差內的值。

至於如何假設這個值。使用的方式便是取平均值。其中必須多次用到除法和乘法。

在計算機中,其本質其實就是加法。整個CPU的運算其實就是一個加法器,當初林鴻實現超腦CPU結構的時候,就是基於一個加法器結構,至於後面的減法、乘法以及除法等運算,都是對在這個加法器的基礎上衍伸而來。

直接使用牛頓迭代法來求平方根,這是普通人的做法,林鴻不用想都知道,如果真的按照這種方式來實現,顯然不能過關。

林鴻略微一思索便有了頭緒,他查看了一下電腦中的編譯器,發現這臺電腦裡面準備得非常充分,不但有市面上常見的一些編程語言編譯器,如C、BAISC、JAVA、C等語言,甚至還有一些非常小衆的編程語言,如Ada、Blue、LISP等等。

最終,林鴻還是調出了電腦中的C語言編譯器,直接敲起代碼來。

霹靂啪啦,僅僅過了二十來秒之後,林鴻便完成了函數的編寫。

他調用用函數執行了一下,程序成功運行,沒有任何地錯誤,一次通過。

想了想,他再次刪掉了兩行,將兩個步驟合併成了一個,最終的函數代碼總數正好爲十行。

“好了。”林鴻道。

站在他身後的廣永元此刻還在皺着眉頭看着他的程序。

他想不通,林鴻爲什麼這麼編寫。

“這麼快就好了?”染髮青年有些詫異。

剛剛他讓出座位的時候,便從一個角落拿出了一個掌上游戲機玩了起來,可是剛剛纔開始玩,便聽到林鴻說已經OK。

這在衆多挑戰者當中,還是頭一回。

染髮青年俯身過去看了一眼,臉上微微一愣,林鴻寫的這十行代碼,雖然他能看懂大部分,但是還有幾個細節他一時之間也沒弄懂。

他順手將林鴻的這個函數加入時間統計宏,執行一萬次之後,最終顯示出了時間,965毫秒,也就是說,不到一秒鐘。

他用敬服的眼神看着林鴻,說道:“你過關了。我在這裡呆了兩年了,兩年來,從這裡走過的人不下五十人,可是從來沒有一個人做到你這一步,不但結果保證精度,並且執行一萬次的時間不超過一秒。”

林鴻笑笑,對於他的誇讚並沒有什麼可得意的,這些都是最基礎的東西,只要理解了CPU的運作,多想一想基本上應該都能達到的,沒有好得意的。

廣永元這個時候出言問道:“阿鴻,我看得不是很懂,求平方根不是使用二分查找法麼?”

廣永元最擅長的並不是這個方面,他畢竟是野路子出身,基礎部分還不是很紮實,林鴻的這十行代碼,他竟然看得滿頭霧水。

他口中所說的二分查找,其實就是牛隊迭代法的實現方式之一。

林鴻點點頭:“算法的確是這個,不過在這裡,我使用二進制的移位代替了乘除。你看……”

林鴻見他聽得不是很懂,於是便重新調出編譯器,下斷點,跟蹤變量的內存賦值,一邊操作一邊解釋:

“在二進制層面上,從前向後決定每一個二進制位上是0還是1,因此,我們可以從最高位向最低位,依次上1,看乘積結果是否大於目標數,如果大於目標數了,那一位就保留0,這樣的情況下,我們上1就不用真的去計算乘法,而是將之前的結果,加上上1以前的數左移1所在位置那麼多位的兩倍,再加上上1的位置左移上1的位置……”

經過林鴻演示加解說,廣永元這才恍然大悟,後面的青年也釋然的點點頭,他雖然知道大致原理,可是在細節方面還是有些地方沒有理解,聽了林鴻完整的解釋這才瞭然。

也就是說,整個算法林鴻使用的都是二進制層面的運算,想不快都難,或者說,沒有哪個程序可以比他的這個算法實現更快了。

僅僅花了二十來秒的時間就搞定第一關,並且答案如此優秀,這可是之前從來沒有碰到過的。

林鴻本來還想着見識一下後面到底出什麼題目,不過黃越在看到林鴻的這個程序之後,便直接宣佈林鴻過關了,沒有必要再繼續闖關。

這個題目,實際上是黃越親自出的,他當初給了一個標準答案,也是二進制層面的實現,可是兩者相比之下,還是有着相當大的差距。

這雖然是最基礎的東西,但正是這些東西最是能看清楚一個人的水平。

很顯然,林鴻在這方面要比黃越更強,更別說,廣永元之前對他說,林鴻還是一個破解大師。

最終,林鴻順利地進入了他們的大本營,也就是一個相當大的大廳,不過在那裡,擺了上十臺各種品牌的電腦和服務器,看上去反而覺得有些擁擠。

大廳之中,有不少人,都是年輕人,他們見來了新成員,有的鼓掌,有的吹口哨,表示歡迎,不過,也僅此而已,例行歡迎儀式過後,他們便再次將注意力放在了自己的電腦顯示器上。

黃越給林鴻重點介紹了兩個人,一個叫袁樂邦,一個胖得連腰都彎不下的胖子,有着彌勒佛一樣的笑臉,擅長的領域正是遊戲破解,廣永元最想挖的人便是他。

另外一個是阮飛舟,帶着厚厚的黑框眼鏡,他擅長的是硬件破解,在他的桌子上,擺滿了各種電子元器件和最新的遊戲機,包括SONY的PS遊戲機和任天堂的GBA和NDS系列遊戲機。

在阮飛舟的身上,林鴻看到了顧偉的影子。

他們這個地方,並不是公司,甚至連一個團隊都稱不上,只是基於興趣聚集在一起,黃越爲他們免費提供場所,而這裡是鴨寮街,任何電器和元器件都能很方便地在這裡找到。

他們是一羣爲技術而癲狂的技術宅。

第398章 安裝超腦系統第474章 好戲在後頭第180章 電話飛客第23章 轉變第66章 球拍擊球第563章 清脆的響聲第693章 棋逢對手第238章 無線電的未來第446章 講課第334章 包你滿意第238章 無線電的未來第697章 新家第453章 是個高手第356章 鄰居第352章 協會第420章 世界太瘋狂第132章 三本着作第591章 一坨狗屎第389章 再想想辦法第631章 重大發現第453章 是個高手第414章 病毒鼻祖第527章 消息第222章 比特信使第521章 一家三口?第573章 股災到來第393章 形意山莊第496章 不打就閃開!第378章 小孫是誰第391章 孫武的打算第635章 失蹤第359章 兩個情報第532章 藍鳳凰第694章 三態第43章 值得一交第33章 煙不是那麼抽滴第444章 給我也裝一個第552章 未解之謎第487章 合作達成第597章 商討第493章 地下一層第637章 耳釘電池第291章 三色火科技第582章 意識網絡?第89章 它太美了第624章 夢中女神第216章 是否侵權第9章 算你贏了第392章 優勢和劣勢第220章 加密算法第139章 棧緩衝區溢出第432章 回聲定位第378章 小孫是誰第308章 值得一做第315章 最後贏家第80章 你好,世界!第96章 研究所所長第73章 見到你很高興第532章 藍鳳凰第242章 最美女人第431章 意外發現第672章 安布雷拉的研究成果第699章 別墅第242章 最美女人第19章 重大事件第16章 負荊請罪第573章 股災到來第158章 震驚全場第31章 長線天線第134章 破解第184章 即時通信軟件第17章 完美的礦石機第661章 接口第395章 褐發美女第518章 舒小嫺的夢境第124章 no!!!!第1章 一人一狗第148章 邀請函第197章 愚人節禮物第583章 LINX開源第670章 談話第227章 開始入侵第270章 再次突破第232章 比特信使之家第176章 包在我身上第2章 百寶箱第463章 信息安全對抗演習第312章 無形的網絡第691章 發福的阿黃第181章 hack!第298章 HELLC重出江湖第249章 比特信使正式版第530章 意識空間第216章 是否侵權第424章 奇怪現象第683章 友好信號第177章 再次見面第69章 一起去北京第93章 挑戰第526章 電子貨幣
第398章 安裝超腦系統第474章 好戲在後頭第180章 電話飛客第23章 轉變第66章 球拍擊球第563章 清脆的響聲第693章 棋逢對手第238章 無線電的未來第446章 講課第334章 包你滿意第238章 無線電的未來第697章 新家第453章 是個高手第356章 鄰居第352章 協會第420章 世界太瘋狂第132章 三本着作第591章 一坨狗屎第389章 再想想辦法第631章 重大發現第453章 是個高手第414章 病毒鼻祖第527章 消息第222章 比特信使第521章 一家三口?第573章 股災到來第393章 形意山莊第496章 不打就閃開!第378章 小孫是誰第391章 孫武的打算第635章 失蹤第359章 兩個情報第532章 藍鳳凰第694章 三態第43章 值得一交第33章 煙不是那麼抽滴第444章 給我也裝一個第552章 未解之謎第487章 合作達成第597章 商討第493章 地下一層第637章 耳釘電池第291章 三色火科技第582章 意識網絡?第89章 它太美了第624章 夢中女神第216章 是否侵權第9章 算你贏了第392章 優勢和劣勢第220章 加密算法第139章 棧緩衝區溢出第432章 回聲定位第378章 小孫是誰第308章 值得一做第315章 最後贏家第80章 你好,世界!第96章 研究所所長第73章 見到你很高興第532章 藍鳳凰第242章 最美女人第431章 意外發現第672章 安布雷拉的研究成果第699章 別墅第242章 最美女人第19章 重大事件第16章 負荊請罪第573章 股災到來第158章 震驚全場第31章 長線天線第134章 破解第184章 即時通信軟件第17章 完美的礦石機第661章 接口第395章 褐發美女第518章 舒小嫺的夢境第124章 no!!!!第1章 一人一狗第148章 邀請函第197章 愚人節禮物第583章 LINX開源第670章 談話第227章 開始入侵第270章 再次突破第232章 比特信使之家第176章 包在我身上第2章 百寶箱第463章 信息安全對抗演習第312章 無形的網絡第691章 發福的阿黃第181章 hack!第298章 HELLC重出江湖第249章 比特信使正式版第530章 意識空間第216章 是否侵權第424章 奇怪現象第683章 友好信號第177章 再次見面第69章 一起去北京第93章 挑戰第526章 電子貨幣