2013-01-21 53 views
-3

什麼是「彙編」在系統編程的情況下? 「one-pass」和「two-pass」彙編器之間有什麼區別?我正在尋找一個詳細的解釋。在系統編程中,什麼是彙編程序?

+0

我用Google搜索,但沒有發現詳細的所有信息,它不是H/W問題 – user1640480

+0

@ user1640480,請閱讀一本書「由Dhamdhere系統軟件」。它以更好的方式解釋了一切。 http://books.google.co.in/books?id=s7zgF7InxIgC&pg=PR11&lpg=PR11&dq=system+software+by+dhamdhere&source=bl&ots=a_68zJoyvk&sig=2Uk8sPDmzkVUMueFDcpaxHZwSz4&hl=en&sa=X&ei=ptP8UOX8BsaPrge1hoGgCA&ved=0CDEQ6AEwAA#v=onepage&q=系統%20software%20by%20dhamdhere&F =假 – Meet

回答

1

程序集是人類仍然可以使用的最低級別的編程語言,也就是說,它被音譯爲二進制,每一條指令都與二進制文本並行,在這個過程中沒有解釋,只是將符號替換爲二進制指令一定數量的位。

兩次通過彙編穿過整個代碼兩次:第一次收集所有的符號和創建一個表匹配的符號的地址,然後在第二時間與地址(連接過程)取代的符號。這使您可以在任何地方定義任何東西,因爲編譯器將首先查看所有定義的代碼,然後查找定義的用法。

一號通匯編經過一個時間的代碼,試圖做的整個過程一次完成,這就是,鏈接文件和定義標籤在讀取一次。這裏,保持順序正確的是非常重要的,這就是,如果你不這樣做,它不會在所有的工作,因爲它會找不到您嘗試使用它後你定義一個符號。

當然,第一種方法更自然,但只要花費的兩倍。對於慢速的舊電腦,這是一個巨大的開銷,所以最好能夠通過代碼一次到能夠在任何地方定義符號的商品。

0

這些系統程序將自動轉化爲M/CA兼容的彙編語言程序,在與M/CA兼容機器語言程序,但潛在的M/CS