2013-10-08 92 views
-2

編譯C程序並創建可執行文件時,exe會對編譯器做出某些假設。例如,當一個C程序在32位系統上編譯並在64位系統上運行時,程序將具有哪些屬性不會隨着架構而改變?C編譯器對體系結構的依賴關係

+0

我需要知道的是,c編譯的程序在編譯時會做什麼以及與該程序和體系結構綁定的是什麼? – user2857829

+1

我剛剛搜索了「C編譯器設計」,並且出現了許多有趣的結果。爲什麼不這樣做? – Bathsheba

+0

我做了同樣的事情,但我所尋找的依賴無處可尋,我在此發佈我的問題作爲最後的手段。無論如何,我欣賞幫助。 – user2857829

回答

3

C編譯器將C代碼轉換爲機器代碼。不同類型的CPU的機器代碼是不同的。寄存器的數量,字的大小和內存總線的大小在不同的體系結構中也不同。

另外,與操作系統的交互也不相同。在嵌入式系統中甚至可能沒有任何操作系統。