小說博覽 > 都市小說 > 超腦黑客

小說博覽 第一百零五章 opcode 文 / 瘋狂小強

    古希臘一個哲學家有這樣一句名言——

    人的知識就好比一個圓圈,圓圈裡面是已知的,圓圈外面是未知的。你知道得越多,圓圈也就越大,你不知道的也就越多。

    林鴻是一本學類的雜誌上看到這句話的。

    他對這句話的感觸很深,所以印象也特別清楚。

    他經常會不由自主地想起這句話,例如此時此刻。

    顯示器,一個白色的小球,顯示器上不斷地來回撞擊彈回,四周都有白色的圍牆擋著。

    當小球和牆面撞擊的時候,就會生鏡面彈射,並且音箱會同時出「咚」地一聲響。

    林鴻坐蘋果機面前,呆呆地看著顯示器,眼神的焦點卻不知道已經散到了何處。

    他從學校回來之後,腦海就不斷浮現著許靜問他的那個問題。

    長大後,想要成為一個什麼樣的人?

    這是他從來沒有想過的事情,此之前,他大的夢想就是想一家三口團聚,自己能夠像其他家庭一樣,過上正常的生活。

    不過他從來沒有對自己的未來有過什麼展望。

    像其他同學那樣,夢想成為科學家?畫家?音樂家?

    亦或者像徐爺爺那樣連國家都重視的無線電專家?

    他所接觸到的職業還有廠長、武術宗師、軍人、教師……

    對於這些職業,他都沒有什麼太大的感覺,雖然有些是自己喜歡的,但卻不能確定,是不是可以將其作為自己為之一生奮鬥的目標。

    他所知道的東西,就像是一個很小的圓,周圍所能接觸到的外界實太小,以至於無法給出足夠的信息,讓他作出正確的決定和得到滿意的答案。

    林鴻並不知道,他此刻的狀態,心理學上,實際上是一個高層次「自我意識」認識反省的過程。

    他開始意識到自己的不足,自己的缺陷,然後會有意識地去採取措施彌補這些不足。

    一般情況下,如果沒有人刻意引導,或者受到獨特的刺激,這個過程是需要二十多歲到三十歲的時候才能夠出現的,那個年齡階段人的知識結構和生活經歷都有了足夠的積累,自然而然會產生這種「自我意識」認識和反省。

    林鴻想了半天,始終無法得到想要的答案,於是只能暫時放棄。

    「順其自然。」

    林鴻給了自己一個安慰,這句話是他師父經常對人說的一句話。

    有些事情,勉強反倒不美,可能會造成相反的效果。

    將這個心思放下,他開始繼續閱讀紅皮書。

    除了顯示器固件方面的內容,其他常見的外部設備固件代碼和原理他也看得差不多了。

    現他要看的,是計算機裡面核心的部位——央微處理芯片,也即pu。

    app_ii採用的芯片是科技出品的6502芯片,這是八位微處理器,問世時,是當時效能強的pu。當然,蘋果機問世時,它已經不是強的了,實際上,剛開始做樣機的時候,設計者沃茲尼亞克使用的芯片並不是6502,後來之所以改為了這個型號,主要是為了考慮節約成本。

    6502的價格只有其他同類產品的分之一甚至低,但是性能方面卻相差無幾,甚至比別的公司的八位微處理器還要快。正是由於這種無法忽視地有點,讓很多計算機或者遊戲機廠商終選擇了它作為pu。

    app_ii蘋果機就是使用這個芯片的偉大產品之一,另外一個比較著名的產品,就是任天堂的家庭遊戲機,俗稱紅白機。

    央處理器,被稱作計算機的「大腦」和「心臟」,這並不是隨便叫的。因為計算機所有的執行和計算,都必須通過pu來完成。

    所謂計算機的可編程性主要是指對pu的編程,只不過平時針對它的操作,被層層封裝隔離,使用高級語言的程序員,甚至不用知道pu的存以及其具體運作原理,只要編寫「1+1」這樣的計算等式,然後執行編譯就會出現結果。而實際上,那察覺不到的一瞬間,這其經過了一個非常繁雜的過程。

    先編譯器要將程序編譯為計算機能夠理解的機器語言,然後開始將程序交給pu來控制,經過提取、解碼、執行、寫回……等一系列的動作,終計算出結果,然後再將其顯示顯示器。

    這個過程雖然繁雜,但是速非常快,計算機剛剛誕生的那會兒,速可能和用算盤計算差不多,但是到了現,已經只是一瞬間的事情了。

    小小的一塊芯片裡面,蘊含的東西卻是非常多的。

    以前,pu是使用繼電器之類的基本開關元器件來實現的,這些元器件不但體積龐大,而且不可靠,很容易破碎。真空管的出現逐漸代替了繼電器,直到後來晶體管的出現才是pu技術的第一次飛躍。

    集成電路將大量的晶體管都集一個小小的芯片上,大大縮小了pu的體積,並且不容易損壞,穩定性也得到了極大的提升。這個時期計算機才真正有了走向千家萬戶的可能,微型計算機應運而生。

    紅皮書,對6502的介紹非常詳細,大到pu芯片各個針腳的功能和作用,小到累加器、指令解碼器以及各種各樣的寄存器的詳細結構都配有詳細的插圖。

    這些插圖,全部是手繪的,原作者正是蘋果公司的天才計算機工程師沃茲尼亞克。

    連線條都有些彎曲的手繪圖形出現計算機手冊,這要是今天,會給人一種非常不專業的感覺,但是紅皮書出版行的時候,正是這些手繪插圖讓全世界所有計算機愛好者和研究人員為之癡迷。

    可以說,app_ii完全是為了計算機愛好者而設計的,包括紅皮書,也是為這些專業人士而撰寫的,因為其設計者是伍茲尼亞克,一個純粹的技術人員。

    不過蘋果公司的喬布斯對此意見很大,他並不是技術人員,他也不希望使用蘋果計算機的用戶僅僅局限於專業人員和計算機愛好者。

    這不是喬布斯想要的產品,所以此後蘋果公司後來陸陸續續推出了很多版本其他類型的計算機,不過卻一直無法超越app_ii,並且由於過於保守,終讓公司陷入了面臨倒閉的危機邊緣,直到很久以後才重崛起——這是後話。

    林鴻對這部分內容看得尤其仔細,對照著pu裡面各部件的電路原理圖,他腦海模擬著整個pu的運算流程。原本他還以為自己理解起來會有一定難,但是後來現,他很順利地就理解了整個pu的運作原理。

    算術邏輯單元、累加器、計數器、時鐘生器、寄存器組……

    林鴻一方面驚詫於這一塊小小的芯片上面竟然集成了這麼多複雜的部件,另外一方面又沉迷這些設計精妙的電路無法自拔。

    無線電台的元器件電路和原理,都是可以看得見摸得著的,可是pu的這些東西,卻被封裝這麼小的一塊芯片內,只能通過外部的引腳對其進行操作,這不得不讓林鴻感到非常震驚。

    這就一個黑匣子,所有輸入輸出信號,全靠那幾根針腳來實現,通過對針腳上面施加各種高低不同的電平電壓,就實現了數據的處理和運算,這種巧奪天工的設計,不得不讓人擊節讚歎!

    通過巧妙的電路處理,計算機科學家們明瞭一種被稱為「pd」的機器語言,以此來對pu進行指令控制,從而實現計算。

    機器語言就是指二進制代碼語言,是低級原始的語言,也是計算機微處理器可以直接理解的語言。例如「0000」表示讓pu加載程序,而「0001」則告訴它要存儲東西了。

    四位數,每一位都有兩種可能,那麼則可以表示2222總共16種不同的操作。

    16種操作剛開始的時候還能滿足需求,可是到了後面計算機的pu越來越複雜,操作指令也越來越多,這已經無法滿足需求了,於是便開始進行擴充,用8位或者12位二進制進行標示。

    直接用二進制來編寫程序,實是太讓人蛋疼了,滿屏幕都是密密麻麻的0和1,眼睛都能看成鬥雞眼去。

    後來有猛人們便想出一個法子,將二進制轉換為十進制進行處理,每四位二進制正好對應一個十進制正好對應,這樣就大大簡化了對記憶以及輸入量的要求。

    再到後來,大家覺得記十進制代碼也是一件難以接受的事情,於是開始用字母單詞的縮寫來對應計算機的操作指令,機器碼助記符和彙編語言便由此而誕生。

    例如「」指令,就是英「」的縮寫,意思就是移動,功能也是將一個數據從一個地方移動到另外一個地方。

    這個指令很有用,例如想要顯示器上顯示字母「a」就只要將a對應的機器語言「」到對應的顯存位置上去,顯示器上就會將「a」顯示出來。

    紅皮書這個章節裡面,詳細介紹了6502的pd機器碼,主板上的電路,就是對這些機器碼的一個實現。

    林鴻直到此刻才算真正理解了,為什麼說計算機的世界就是0和1組成的世界。

    ====

    推薦朋友現代修真作品

    bkid=2330003,bkna=《強仙王》]
上一章    本書目錄    下一章