如果不想看下面這么一大段看起來讓人頭疼的話 直接跳到最后的簡化版
我們想了解編譯型語言與解釋型語言的區(qū)別 ,我們先來回答一個問題 編程語言是什么, 我們計算機分為兩大系統(tǒng) 硬件和軟件兩大塊,軟件又分系統(tǒng)軟件和應用軟件,操作系統(tǒng)不用說咱們每天都在接觸 今天咱們要了解系統(tǒng)軟件里的語言處理程序:也稱為編譯程序,作用是把程序員用某種編程語言(如Python)所編寫的程序,翻譯成計算機可執(zhí)行的機器語言。機器語言也被稱為機器碼,是可以通過CPU進行分析和執(zhí)行的指令集。而編程語言就是用來定義 計算機程序 的形式語言。我們通過編程語言來編寫程序代碼,再通過語言處理程序執(zhí)行向計算機發(fā)送指令,讓計算機完成對應的工作,簡單來說,編程語言就是人類和計算機進行交流的語言。
咱們先來說編譯型:是有一個負責翻譯的程序來對我們的源代碼進行轉換,生成相對應的可執(zhí)行代碼,這個過程就被稱為編譯,而來編譯的程序也就被稱為編譯器,也就是說我們寫一個程序代碼在源文件當中,通常經過編譯以后生成一個可執(zhí)行文件,這樣我們就可以直接運行了
解釋型:在程序運行的前一刻,還只有源程序沒有可執(zhí)行程序,而當執(zhí)行時每執(zhí)行到源程序的某一條指令,則會有有一個稱為解釋程序的外殼程序將源代碼轉換成二進制代碼以供執(zhí)行,也就是說一邊解釋 一邊執(zhí)行 ,所以解釋型程序是離不開解釋程序的
上面我們大概介紹了兩種語言的特點,從字面上看,“編譯”和“解釋”的確有“翻譯”的意思,只是他們的區(qū)別在于翻譯的時機安排不太一樣,打個比方,你想閱讀一下日本國家的文化精華,而你又不認識日文,這時候你可以請翻譯給你整個字幕都翻譯好,也可以請美女翻譯在身邊一句一句的給你翻譯,但當你又想知道上句內容,還得重新翻譯.
------------------------------------------------------------------------------------------------
總結版 如果有什么遺漏與不對的地方,請留下你寶貴的意見
簡單來說 計算機不能直接的理解高級語言,只能直接理解機器語言,所以必須要把高級語言翻譯成機器語言, 也就是 0 1 ,這樣計算機才能執(zhí)行高級語言編寫的程序, 翻譯的方式有兩種,編譯和解釋 只是翻譯的時間不通罷了, 但隨著設計技術與硬件不斷發(fā)展,編譯型與解釋型兩種方式的界限正在不斷變得模糊.
特征:
解釋型語言在運行程序的時候才翻譯,每執(zhí)行一次,要翻譯一次,效率較低.
編譯型就是直接編譯成機型可以執(zhí)行的,只翻譯一次
優(yōu)點:
解釋型:可移植性好,只要有運行相應需要的解釋環(huán)境,可以在不用的操作系統(tǒng)上運行,修改調試也非常方便
編譯型:相比解釋執(zhí)行編譯執(zhí)行效率高,占用資源小,適合復雜程序
缺點:
解釋型:一句一句執(zhí)行解釋,浪費計算機資源,效率低
編譯型:兼容性差,編譯型程序雖然源代碼也可以移植,但前提是必須針對不同的系統(tǒng)分別進行編譯.
聯(lián)系客服