對於計算機科學作業,我應該用任何語言編寫一個小程序,並確定源代碼指令與編譯的機器代碼指令的比率 - 我該如何做?源代碼/機器語言的比例
0
A
回答
1
根據您的編譯器,您可以使用開關來創建代碼的彙編版本。彙編代碼是操作碼的直接助記符表示(「機器語言」)。
With gcc
(考慮加-masm=intel
如果你喜歡英特爾在默認AT & T語法):
gcc -S ...
對unixoid系統我所知,其他的編譯器還支持-S
。這將跳過編譯,您將需要查找以源文件命名的文件,但擴展名替換爲.s
。
或者with MSVC:
cl.exe /FA
...您可以添加c
(即/FAc
),這也將編譯。然後,您需要查找.asm
文件。
另見:How can I see the assembly code for a C++ program?
此步驟完成後,你基本上比較(相關!)源代碼行。然而,相關性取決於你自己的(或你的老師的)判斷。有些工具可用於計算SLOC,例如在這篇維基百科文章中引用的那個:SLOCCount。
注意:第一段關於直接表示的陳述略有不正確。如果我們正在談論宏彙編器,那麼由於宏,這並不成立。但即使MSVC使用宏彙編程序作爲後端,編譯器也沒有充分利用宏功能,因此它們不應該在SLOC計數中干涉(太多)。
相關問題
- 1. 腳本語言解釋器源代碼
- 2. 源代碼語言分析
- 3. 彙編語言機器代碼
- 4. 機器語言代碼在目標c
- 5. 谷歌語言API的源代碼?
- 6. 使用「不同語言」的源代碼
- 7. Cocoa接口的語言,優雅,開放源代碼示例?
- 8. 編程語言的代碼示例
- 9. 具有適當語言代碼的多語言資源
- 10. 保護腳本語言源代碼
- 11. TypeScript Visual Studio語言擴展源代碼
- 12. R語言源代碼 - C代碼中的NOMORE_FOR_THREADS是什麼
- 13. 將彙編代碼轉換爲C語言中的機器代碼
- 14. 語言代碼6.1
- 15. 任何工具都可以根據語言語法隨機生成源代碼?
- 16. 比較源代碼
- 17. 什麼將彙編語言轉換爲機器代碼
- 18. 語言在網絡從源代碼解釋字節碼與
- 19. NTEventLogAppender的源代碼示例?
- 20. Sonos應用代碼語言
- 21. 中國語言代碼
- 22. RISCV Verilog HDL語言代碼
- 23. 更改語言PARAM代碼
- 24. 語言代碼參考
- 25. 笨語言代碼路由
- 26. 與C語言代碼
- 27. AVR彙編語言代碼
- 28. 轉換爲機器語言
- 29. 動態編程語言的好處的具體(代碼)示例
- 30. java.awt.Robot的本機源代碼