4 總結
打孔卡,其實就是一種存儲程式型計算機。
隻是這整個程式的機器碼,不是通過計算機編譯出來的,而是由程式員的人腦“編譯”成一張張卡片的
對應的程式,也不是存儲在裝置裡,而是存儲成一張打好孔的卡片
但是整個程式運作的邏輯和其他CPU的機器語言沒有什麼分别,也是處理一串“0”和“1”組成的機器碼而已。
我們看到了一個C語言程式,是怎麼被編譯成為彙編語言,乃至通過彙編器再翻譯成機器碼的。
除了C這樣的編譯型的語言之外,不管是Python這樣的解釋型語言,還是Java這樣使用虛拟機的語言,其實最終都是由不同形式的程式,把我們寫好的代碼,轉換成CPU能夠了解的機器碼來執行的。
隻是解釋型語言,是通過解釋器在程式運作的時候逐句翻譯,而Java這樣使用虛拟機的語言,則是由虛拟機對編譯出來的中間代碼進行解釋,或者即時編譯成為機器碼來最終執行。
5 推薦閱讀
-
了解Intel CPU的指令集參看
《計算機組成與設計:軟/硬體接口》第5版的2.17小節
參考
深入淺出計算機組成原理