吳東他們目前雖然進展比較慢,但至少已經把前期的框架搭起來了,接下來的工作就是實現指令集,這基本上是一個體力活了,只要理解了其中的原理,就是按照技術手冊,將這些指令一個一個實現出來,非常的繁雜,同一個指令,運算元不同的話,其對應的機器碼也不同。
所以到目前為止,吳東他們才實現了幾個主要的指令。
林鴻看了一會兒他們所編寫的程式碼,當場就指出了幾個可以更加靈活實現的幾個功能,一下子讓幾個他們認為非常難的幾段程式碼變得簡單起來,減少了不少程式碼量。
這讓吳東和唐華鑫兩人都非常佩服。
吳東他們所使用的方式,完全是最原始的,一步一步地進行,這是初學者最常見的思維,雖然效率比較低,但是勝在簡單有效,思路清晰。
而林鴻所使用的方式,卻是經過高度最佳化之後的,例如對條件判斷機制,讓吳東他們來實現,可能至少要三四條語句進行分別判斷,而林鴻則使用一條語句就能搞定。而這條簡單的語句,吳東他們看起來,必須得想半天才能想通其中的機制。
總得來說,他們的程式碼在功能上還是沒什麼問題的,只是有些功能在實現的時候,效率有點低了,因為這是軟體模擬,就算是最後執行起來了,速度也會受到影響。
寫得不錯林鴻鼓勵道,寫到這裡,我相信你已經對cpu的構造和計算機的底層原理有了足夠的認識了。
吳東深以為然:是啊,為了編寫這些程式碼,我將還明年下半年才開始學的內容就提前學習了,計算機組成原理那本書也看了好幾遍了。
吳東還是大一,按照學校安排的課程,還是處於最基礎的文化知識普及階段,這些內容至少要大二甚至大三才會涉及到一些。
這個專案的確不錯。
這時,唐華鑫也插言道:我之前自學計算機組成原理和微機原理,看了好幾遍教材,但是一直看得似懂非懂並且,其中的很多細節都理解不了。接觸到這個專案之後,這才有一種恍然大悟的感覺。
這個專案,簡直就是對學校的那些理論課程的有效實踐,學校的課程實在是太偏理論了,對於大部分人來說,基本上是考完試就完全還給老師半點記憶也不留下。而真正感興趣的人,也好不到哪裡去,因為他們根本不知道,學習這些東西到底是為什麼,有什麼用,平時根本應用不到。
很多小組的成員,在接觸到這個專案之後,這才有一種頓悟的感覺發現之前所學習的東西,原來是這麼回事。
林鴻幫他們將這個專案的程式碼整理了一下,將整個框架的結構最佳化然後將接下來要編寫的內容編譯器的步驟也一同給寫了出來。
並且,他將編寫這個東西所要參考的書籍也列了個清單,讓他們在編寫程式碼的時候,可以看這些書籍進行學習,減少所走的彎路。
林鴻道:只要將編譯器實現出來,那麼就可以在自己的虛擬機器裡面執行特定的程式了。這樣一來,編寫出來的虛擬機器才算是真正有點作用。
作用吳東有些好奇,這東西編寫出來之後有什麼作用
他一直將這個專案當做純粹的學習專案,從來沒有想過,等他將這些功能實現之後要拿它來做什麼事情。
虛擬機器的用途還是很廣泛的。林鴻解釋道,如果技術足夠厲害,自然可以像微軟ibmte他們自己編寫的虛擬機器那樣,直接在上面執行作業系統。
執行自己的作業系統吳東聞言不由有些咋舌,這得編到什麼時候啊
僅僅憑藉你自己的力量當然不現實,你不是組建了一個小組麼在學校想要學習這些知識的人應該有不少,如果能很好地組織起來,還是可能有所作為的。就好像ux那樣,利用開源的力量,聚集了全世界的優秀程式設計師和駭客為其貢獻程式碼。
這個吳東對此毫無信心。
倒是在旁邊的唐華鑫對此微微點頭。
你說得沒錯,這個專案其實也可以像其他高校推廣,將其打造一個學習專案的同時對其功能繼續完善。
林鴻見吳東沒有什麼信心,笑道:其實也不用變成那麼複雜的系統。我的建議是,先將主要的幾個功能實現出來,然後在上面再折騰點什麼。虛擬機器,除了可以用來安裝作業系統,調吳東他們目前雖然進展比較慢,但至少已經把前期的框架搭起來了,接下來的工作就是實現指令集,這基本上是一個體力活了,只要理解了其中的原理,就是按照技術手冊,將這些指令一個一個實現出來,非常的繁雜,同一個指令,運算元不同的話,其對應的機器碼也不同。
所以到目前為止,吳東他們才實現了幾個主要的指令。
林鴻看了一會兒他們所編寫的程式碼,當場就指出了幾個可以更加靈活實現的幾個功能,一下子讓幾個他們認為非常難的幾段程式碼變得簡單起來,減少了不少程式碼量。
這讓吳東和唐華鑫兩人都非常佩服。
吳東他們所使用的方式,完全是最原始的,一步一步地進行,這是初學者最常見的思維,雖然效率比較低,但是勝在簡單有效,思路清晰。
而林鴻所使用的方式,卻是經過高度最佳化之後的,例如對條件判斷機制,讓吳東他們來實現,可能至少要四條語句進行分別判斷,而林鴻則使用一條語句就能搞定。而這條簡單的語句,吳東他們看起來,必須得想半天才能想通其中的機制。
總得來說,他們的程式碼在功能上還是沒什麼問題的,只是有些功能在實現的時候,效率有點低了,因為這是軟體模擬,就算是最後執行起來了,速度也會受到影響。
寫得不錯林鴻鼓勵道,寫到這裡,我相信你已經對cpu的構造和計算機的底層原理有了足夠的認識了。
吳東深以為然:是啊,為了編寫這些程式碼,我將還明年下半年才開始學的內容就提前學習了,計算機組成原理那本書也看了好幾遍了。
吳東還是大一,按照學校安排的課程,還是處於最基礎的文化知識普及階段,這些內容至少要大二甚至大三才會涉及到一些。
這個專案的確不錯。
這時,唐華鑫也插言道:我之前自學計算機組成原理和微機原理,看了好幾遍教材,但是一直看得似懂非懂並且,其中的很多細節都理解不了。接觸到這個專案之後,這才有一種恍然大悟的感覺。
這個專案,簡直就是對學校的那些理論課程的有效實踐,學校的課程實在是太偏理論了,對於大部分人來說,基本上是考完試就完全還給老師半點記憶也不留下。而真正感興趣的人,也好不到哪裡去,因為他們根本不知道,學習這些東西到底是為什麼,有什麼用,平時根本應用不到。
很多小組的成員,在接觸到這個專案之後,這才有一種頓悟的感覺發現之前所學習的東西,原來是這麼回事。
林鴻幫他們將這個專案的程式碼整理了一下,將整個框架的結構最佳化然後將接下來要編寫的內容編譯器的步驟也一同給寫了出來。
並且,他將編寫這個東西所要參考的書籍也列了個清單,讓他們在編寫程式碼的時候,可以看這些書籍進行學習,減少所走的彎路。
作者「瘋狂小強」的其他小說
《修仙高手再戰都市》