回覆列表
  • 1 # z是小張呀

    首先,認真考慮一下,程式碼到底是從哪裡來?


    所有程式碼都是被輸入的。我們考慮一種最常見也是最根本的來處,就是鍵盤的擊鍵。當你敲擊鍵盤的時候,你的電腦螢幕上會顯示你的按鍵。那麼這個時候,看上去是程式碼,但是本質是什麼呢?本質是,你的鍵盤底層的線路隨著你的敲擊鍵盤,在不停的傳遞電訊號。只是你傳遞的電訊號,被計算機進一步處理,給“寫到”顯示器上,你看到了所謂的程式碼。也就是在這一步,沒有什麼所謂的程式碼,那只是被處理過的東西,是表象,本質上只是電訊號的傳遞。


    接下來,你的程式碼要儲存,儲存到硬碟或者其他電子裝置上,說是儲存,其實只是,按照你剛剛輸入的電訊號,把硬碟或者電子裝置上某一塊地方,通電後啟用成相應的電訊號。如果是磁碟,就是你輸入的電訊號,轉換成磁訊號。


    截至到目前,雖然你看到的是許多字元,還有所謂的檔案,等。其實本質上,都是高低電平,或者磁的正負極。你看到的東西,都是已經被處理過的東西,你寫程式碼不可能不用文字編輯器吧?就是開啟之後寫新檔案的那個東西.


    後面就簡單了,因為你明白了,電腦裡面只有高低電平或者其他可以跟高低電平相互轉換的東西,比如磁 啊,光的(光碟資料)等等。


    後面所有的東西,都是用工具(工具的基礎和你輸入的東西本質上是一樣的),在你輸進的 那些高低電平上,進行轉換。但是這些轉換,都是由規範的。都是死的東西。就像法律條文一樣。但是比法律條文更嚴格,1就是1,0就是0。


    其中,cpu設計的時候,僅僅設計了,幾條固定線路,這些線路,規定死了幾個最最基本的操作。比如 電路接收到 高、高、高電平 經過電路 另外一端就變成 低,低,低電平。這就是所謂的機器碼的本質。就是幾個功能各異的電路的輸入和輸出。而已。


    舉一個簡單的栗子來說明:


    假設你有8個不同顏色的燈泡 ,分別用八個開關來控制。那麼透過不同燈泡的亮滅,能表達多少種訊號呢?比如全亮是一種,全滅是一種,那麼第一個亮後面全滅又是一種,等等等等。。。。這樣就可以透過燈泡的亮或者滅表達出2*2*2*2*2*2*2*2=256種訊號。因為8個燈泡,每個燈泡擁有,亮或者滅兩種狀態。


    那麼這些控制燈泡的開關,你可以想象成鍵盤,燈泡想象成顯示器。


    這就是一開始的控制邏輯。除了開關就是燈泡,然後就是電線,所以起初一臺電腦要佔據一棟別墅的空間。


    後來技術更新了,點選一個按鈕可以同時控制八個開關,為了記住開了哪些關了哪些開關。科學家就用熟悉的字元表示。比如一個按鈕可以讓八個開關都關,就在按鈕上貼0,第一個開關開後面七個開關關,這個按鈕就貼上數字1。等等等,一直貼到255。超過9的數字不好記憶,就換別的符號。於是現在電腦鍵盤上的符號都用上了。整個鍵盤才用100來個按鈕。256的一半都不到


    再後來科技進步,燈泡被更小的燈泡代替,甚至到了目前的4k螢幕,其實都是燈泡,只是大小分別而已。所謂的4k也就是這麼多燈泡(4096*2160)。之前的電線,被後來的大規模積體電路取代。


    但是本質上都沒有變,就是開關控制燈光。在開關和燈泡之間加入了大量的邏輯電路。


    只是開關的組合賦予了字元和數字的含義。這是人為的設定。燈泡的亮滅來顯示影象。現在燈泡都可以當按鈕來用了,就是所謂的觸控式螢幕。


    計算機內部只有線路,線路上只有通電和斷電兩種狀態。所有眼睛看到的都是人為賦予的標籤。比如鍵盤上的a鍵,螢幕上顯示的a字母。本質上和電腦一點關係沒有。就像組成你公司名字的那幾個漢字,和你公司本身一毛錢關係沒有,只是一個標籤而已。


    這就是程式碼的來龍去脈。也是程式的本質。


    碼字好累啊。


    再舉一個類似,更深入但是不太準確的例子:


    就好比這世界上的各種動物,人,還有植物,山,水等等。雖然形態各異,功能各異。但是就其物質層面來講,統統都是一堆元素的組合。但是,人動物或者植物呢,除了元素,還有生命。那個東西,我也不知道到底是什麼。要是沒有生命,就跟計算機中的軟體工具一樣了。所以這個例子類似,但不準確。說白了,計算機的一切,就是光、電、磁和導體(半導體),還有人類設計的一些如何轉換和何時傳輸等規則。


    說完了。

  • 中秋節和大豐收的關聯?
  • 烽火佳人真實故事?