DOS执行汇编代码

4

我正在编写一段汇编代码,用于注册tsr并退出。

我正在努力弄清楚如何正确地将其汇编成可以在dos中执行的格式。

我可以访问ubuntu 9.04和windows xp。(首选linux方法)。如果有人能告诉我如何将我的代码组装成dos可执行文件格式,以及如何在dos中执行它,我将不胜感激!


TSR是什么?DOS?突然又回到了1985年。XP甚至支持TSR吗? - S.Lott
我猜你仍然可以做到这一点。太神奇了。 - S.Lott
现在我很好奇 - 你的 TSR 是做什么的?还是只是为了学习体验? - Michael Kohne
1
我在学校学习汇编课程,想要实际运用一些所学知识。 - Without Me It Just Aweso
@ZJR DOS在一些嵌入式x86系统中仍然比较常见,这些系统需要操作系统的优势,同时也需要对硬件进行裸机访问的灵活性。 - San Jacinto
请注意,尽管汇编语言编程看起来有些容易,但组装一个能够正常工作而不崩溃的TSR需要对DOS及其内部运作有非常广泛的了解。 - Patonza
3个回答

2
如果有其他人遇到与我相同的问题,这里是我最终找到的答案。这是一个免费的开发环境,可以轻松制作DOS程序: http://www.winasm.net/ 开发环境使用MASM完成所有后端工作,因此还必须安装MASM,但它可以处理所有汇编和链接。

1

如果是用于 .COM 可执行文件,你只需要在开头加上 "org 0x100",并使用适用于任何操作系统的 nasm 进行汇编。

对于 .EXE 文件,你需要使用 DOS 链接器,即与 TASM/MASM 一起提供的链接器。我不确定是否存在便携式的 16 位 DOS 链接器,大多数都倾向于链接在 DOS 扩展器下运行的 32 位程序。


好的,我已经能够使用nasm进行汇编,但是链接部分让我感到困惑。我下载了masm并正在尝试弄清楚如何进行链接。 - Without Me It Just Aweso

1

(http://web.archive.org/web/20071013092543/http://blogs.pcworld.com:80/communityvoices/archives/2007/10/using_masm32_wi.html) - mwfearnley

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接