顯然WIne不支持16bit DOS應用程序。任何人都知道如何獲得MASM英特爾風格的裝配工作?是否有人在Wine for Linux中使用過MASM彙編語言?
回答
使用DosBox
您是否嘗試過使用NASM?它是免費的,開源的,支持類似於MASM的類似Intel的語法[我承認,我從未使用],並且可以在幾乎所有x86平臺上運行,包括Windows,Linux,BSD等。
On your典型的Linux發行版或BSD端口樹,它可能已經打包並準備好了。 (前提是你apt-get
,pkgadd
,或什麼的。)
我主要關心的是,無論我寫什麼都必須在windows中工作。如果我編寫一些基本程序,它們是否可以在linux和windows上運行?或者我需要爲每個平臺創建不同的版本?在我上課的時候,我們使用'int'DOS中斷等等。我想在將來使用NAS的GAS會更好,但是學校的班級使用MASM :( – trusktr 2010-10-13 07:22:10
16位代碼不起作用在win64中,所以你必須使用DOS模擬器,例如DosBox或Bochs,這些模擬器可用於大多數平臺。 – 2010-10-13 15:45:01
如果你想讓它在Windows和Linux下運行,你必須爲syscalls和當你的二進制文件加載的時候它會運行,但是如果你爲一個類定位一個DOS COM文件,那麼NASM將在彙編步驟中運行得很好,運行它將會是一個不同的故事,也許你應該使用DosBox – asveikau 2010-10-13 16:54:32
使用DOSEMU到Linux/UNIX上運行16位DOS程序
你的問題的解決方案可能是有: http://www.japheth.de/JWasm.html
這是一個兼容MASM語法的開源彙編程序(接近100%,包括最離奇的MASM尋址語法情況,結構化編程僞操作,宏等)。
它可以生成Intel OMF,MS Coff(32位和64位),Elf(32位和64位),Bin和DOS MZ。
它存在於DOS,Windows和Linux二進制文件中。
它甚至可以構建到OS/2,FreeBSD。
因此,你有最大數量的彙編程序和目標二進制文件的組合,包括那些在本地Linux下發生的一切。
如果您編譯爲16位代碼,則必須在16位環境中執行它,這意味着您已獲得的建議之一。
但是,您可能也能夠將16位語法編譯爲32位模式代碼,具體取決於您嘗試執行的操作。因此,您可能能夠在32位模式下執行16位算法,在32位環境中本地執行,就像x86架構允許的那樣。不過,生成的代碼會更大,因爲彙編程序會在每個16位指令前面生成16位轉義碼,但如果僅僅是測試16位代碼的邏輯,那麼這是可以的。
我希望這對你有意義。如果沒有,請詢問更多...
這很有趣!我怎樣才能將16位DOS應用程序編譯成32位二進制代碼?aps非常小,所以增加的尺寸將會非常明顯 – trusktr 2010-10-16 18:03:08
如果你使用16-bi t指令在32位模式下(例如引用AX而不是EAX,WORD而不是DWORD等的操作符),彙編器在引用16位數量的每條指令前自動生成一個轉義字節以指示16位(而不是默認的32位。這並不普遍,但它可以讓你驗證一些簡單的算法。實際上,在16位模式下引用32位寄存器時,其他方式的工作原理完全相同。試試這與MASM和使用選項列出所有生成的字節代碼... – filofel 2010-10-17 20:15:41
- 1. 彙編語言MASM跳躍
- 2. GCD遞歸彙編語言X86 MASM
- 3. CUDA是否有彙編語言?
- 4. 在linux中混合使用彙編語言和C編程
- 5. linux「as」彙編程序是否支持intel格式彙編語言?
- 6. 使用x86彙編語言
- 7. 是否有使用匯編語言規則登記
- 8. 彙編語言中的Linux系統調用表或彙總表
- 9. 64位Linux,彙編語言,問題?
- 10. 在Linux中使用匯編語言處理GUI
- 11. 什麼是MASM?我們通常使用它來學習彙編語言代碼?
- 12. 彙編語言是否危險?
- 13. 學習彙編語言是否值得?
- 14. 在彙編語言中使用DUP
- 15. 在彙編語言中註冊使用
- 16. 彙編語言
- 17. 彙編語言?
- 18. MIPS彙編語言
- 19. Linux彙編語言錯誤C++
- 20. 如何使用Linux中的彙編語言
- 21. 多少彙編語言是有
- 22. x86彙編語言
- 23. ARMv6彙編語言
- 24. 無法在x86 Linux中使用mmap分配內存Linux彙編語言
- 25. .NET彙編語言
- 26. 彙編語言 - 乘
- 27. 彙編語言Bubblesort
- 28. 分割用匯編語言
- 29. 彙編語言:cbw
- 30. 彙編語言 - LDI
葡萄酒_應該支持16位。 – 2011-07-22 19:17:14