當我們學習彙編的時候,除了數學基礎以及硬體基礎以外,操作系統的基礎也是一個至關重要的環節。彙編語言本質上就是機器碼的human-readable的版本,而硬體相同,則同一個程序的機器碼一定相同。那麼我們為什麼還要研究操作系統呢?這是因為,我們通過彙編語言,最終得到的可執行文件是與操作系統有關的,是操作系統來決定我們如何裝載、執行這些可執行文件。此外,不同操作系統提供的庫、系統調用並不完全相同。因此,只有了解了操作系統以後,才能更好地編寫彙編語言。
Darwin與XNU
macOS的基本結構如下:
※64 位環境彙編的 "Hello World!
"
※當載入二進位程序時ip不等於0時
※從C語言到彙編(四)while語句
TAG:彙編語言 | macOS |