[英]How to run converted .asm code from .c using 'gcc' in Emu8086
[英]C source code, Watcom Compiler and EMU8086
如何获得Watcom编译器(在64位主机上运行的分叉版2.0 beta)在ASM文件中输出8086程序集源代码 ? 从命令提示符运行wcc -0 main.c只会生成OBJ文件。
附带说明一下,我的主要任务是将C源代码转换为可以与EMU8086一起运行的汇编代码(而不是编写实际的汇编代码)。 我希望Watcom生成的ASM文件可以在EMU8086中运行而无需修改(复制粘贴)。
我没有找到让Watcom编译器直接生成ASM文件的方法,但是您应该能够使用Watcom反汇编程序( wdis
)从编译器生成的目标文件中生成程序集列表。 在这种情况下,您将运行wdis -l main
以读取main.obj
并生成一个名为main.lst
的文件,其中包含汇编语言列表。
如果使用-d1
或-d2
选项重新编译main.c以将额外的调试数据放入main.obj文件中,则可以使用反汇编程序的-s
选项使汇编语言列表与注释混合,以显示来自main.c
的原始C源代码。 main.c
。
要使反汇编器省略描述性注释,并仅给出应作为Watcom汇编器源文件接受的普通反汇编,请为反汇编器提供-a
选项。 此选项还将使反汇编程序的输出写入main.asm
而不是main.lst
。 抱歉,我不知道此输出是否将由EMU8086直接消耗。
从http://www.openwatcom.com/doc.php链接的《 Open Watcom C / C ++用户指南》和《 C / C ++工具用户指南》中都对此进行了讨论。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.