首頁 > 運維 > linux運維 > 主體

Linux是用組合語言寫的嗎

WBOY
發布: 2022-08-18 15:19:12
原創
4742 人瀏覽過

linux是使用彙編語言編寫的,但是並不全是使用彙編語言編寫,linux核心的大部分是使用C語言編寫的;C語言是linux的“母語”,這也是linux這個開發環境和本身機制導致的,只有部分是使用彙編語言寫的。

Linux是用組合語言寫的嗎

本教學操作環境:linux7.3系統、Dell G3電腦。

Linux是用組合語言寫的嗎

linux是用C語言和組合語言寫的。 C語言是Linux的“母語”,這也是linux這個開源環境和本身機制所導致的;Linux核心大部分是用C語言編寫的,還有部分是用彙編語言寫的,因為對於硬件,彙編有更好的性能和速度。

linux

Linux,全名為GNU/Linux,是一種免費使用且自由傳播的類別UNIX作業系統,其核心由林納斯·本納第克特·托瓦茲於1991年10月5日首次發布,它主要受到Minix和Unix思想的啟發,是一個基於POSIX的多用戶、多任務、支援多執行緒和多CPU的作業系統。它能運行主要的Unix工具軟體、應用程式和網路協定。它支援32位和64位硬體。 Linux繼承了Unix以網路為核心的設計思想,是一個效能穩定的多用戶網路作業系統。

那麼linux是用什麼語言開發的呢?很多新手對此不是很清楚?下面了解一下:

Linux核心大部分是用C語言寫的,還有部分是用彙編語言寫的,因為在對於硬體上,彙編有更好的效能和速度。

而Linux的一些元件系統和附加應用程式是用C、C 、Python、perl等語言寫的。

彙編語言

彙編語言(Assembly Language)是任何一種用於電子電腦、微處理器、微控制器或其他可程式裝置的低階語言,又稱符號語言。在組合語言中,用助記符取代機器指令的操作碼,用位址符號或標號取代指令或操作數的位址。在不同的裝置中,組合語言對應不同的機器語言指令集,透過彙編過程轉換成機器指令。特定的組合語言和特定的機器語言指令集是一一對應的,不同平台之間不可直接移植。

組合語言, 即第二代電腦語言,用一些容易理解和記憶的縮寫單字來代替一些特定的指令,例如:用"ADD"代表加法操作指令,"SUB"代表減法操作指令,以及"INC"代表增加1,"DEC"代表減去1,"MOV"代表變量傳遞等等,透過這種方法,人們很容易去閱讀已經完成的程序或者理解程序正在執行的功能,對現有程式的bug修復以及營運維護都變得更簡單方便。但電腦的硬體不認識字母符號,這時候就需要一個專門的程式把這些字元變成電腦所能辨識的二進位數或機器語言。

因為彙編語言只是將機器語言做了簡單編譯,所以並沒有根本上解決機器語言的特定性,所以彙編語言和機器本身的程式設計環境息息相關,推廣和移植很難,但還是保持了機器語言優秀的執行效率,因為他的可閱讀性和簡單性,彙編語言到現在依然是常用的程式語言之一。 

彙編語言不像其他大多數的程式設計語言一樣被廣泛用於程式設計。在今天的實際應用中,它通常被應用在底層,硬體操作和高要求的程式最佳化的場合。驅動程式、嵌入式作業系統和即時運行程式都需要彙編語言。

推薦學習:Linux影片教學

#

以上是Linux是用組合語言寫的嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!