是否可以编写一个可以编译x86 .asm(汇编语言)文件的Java程序(我不介意它是否依赖于外部库)?如果是这样,我将如何去做(我将需要使用哪些库以及我将如何去做)?
我已经研究过Java和Assembly组装,但是找不到任何相关结果。我是否必须使用像nasm这样的已经完成的汇编程序?
答案 0 :(得分:1)
是否可以编写一个Java程序...可以编译.asm ...文件?
您可以(几乎)使用任何能够读取文本文件和写入二进制文件的编程语言。
因此,至少在理论上,您可以使用Java。
如果是的话,我该怎么做...?
我已经研究过Java和Assembly组装...
不幸的是,汇编器和编译器通常不是用Java编写的。
您很有可能必须从头开始开发所有需要的功能!
我是否必须使用像nasm这样已经制作好的汇编程序?
这里的问题是为什么您要使用Java进行汇编。
您可以用Java编写汇编程序,但这将很多。
如果要将组装程序包含在要出售的Java程序中,则可能有必要编写自己的组装程序,因为许可不允许您将产品与“ nasm”一起发货。
如果您想编写一个汇编程序只是为了练习(因为您想获得编译器开发的经验),那么花100个小时甚至更多的时间也是很有意义的。
在所有其他情况下,我可以想象花一个月的时间来开发可以从互联网上免费下载的软件是没有道理的。