2013-01-23 121 views
1

我只是默認好奇,微軟的C/C++優化編譯器能編譯成機器語言或字節碼嗎?微軟C/C++優化編譯器編譯爲

+5

你對「機器語言」和「字節碼」的理解是什麼? –

+0

很少,剛剛開始上課操作系統 –

+0

它在內部編譯到中間代碼。哪一個通用的代碼生成器,第二階段,然後轉換爲優化的機器代碼。或IL。在編譯器設計中很常見,代碼優化器和生成器階段是一項沉重的投資。實際上,除了它使用的DLL和臨時文件之外,它們並不是非常明顯,因此最容易直接考慮到機器碼轉換。 –

回答

5

它使用/clr開關默認編譯爲機器語言(微處理器操作碼)或CIL

爲了便於比較,C#和Visual Basic編譯爲CIL,Visual Basic 6可以編譯爲P代碼(一種字節代碼形式)或本機代碼(機器語言)。

+0

你的來源是什麼? –

+0

我的頭和其他三位社區成員通過他們的讚揚達成一致。請參閱http://visualbasic.freetutes.com/learn-vb6-advanced/lesson20/p6.html。和http://msdn.microsoft.com/en-us/library/k8d11d4s.aspx。另請參閱http://msdn.microsoft.com/en-us/library/ms235639(v=vs.80).aspx和http://vb.mvps.org/hardcore/html/p-codeversusnativecode.htm。 「本機」是指機器說明。 –

+0

謝謝並不是要求你信任我,更多的是我的教授。我通常相信我在這裏看到的SO –

3

它可以做到這一點。

默認情況下,它會生成本機機器碼。 使用/ clr命令行選項,它將生成.NET IL字節碼。

+0

+1爲正確的答案 –