在64位Windows上进行16位汇编?
我决定不久前开始学习装配,所以我开始使用FASMW进行16位装配.
解决方法您无法使用16位程序集的原因是因为所有64位版本的Windows中的 16-bit subsystem has been removed.解决这个问题的唯一方法是安装像DOSBox这样的东西,或者像VirtualBox这样的虚拟机软件包,然后安装FreeDOS.这样,无论如何你都会得到真正的DOS. (NTVDM is not true DOS) 就个人而言,我是否鼓励为DOS编写16位程序集?不.我使用32位甚至64位汇编 – 原因是不同的操作系统有一组不同的函数调用(称为ABI).因此,64位Linux应用程序的ABI与32位不同.不确定Windows是否属于这种情况.但是,我保证中断的含义可能不同. 此外,您还可以使用16位汇编来考虑各种事项,例如正在使用的内存模型.我可能错了,但我相信DOS会给你64K的内存来玩“就是这样”.一切,你的整个堆和堆栈以及代码必须适合这个空间,正如我所理解的那样,这让你想知道有什么工作,真的. (编辑:西双版纳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |