Assembly 8086/88 ubuntu仿真器

Assembly 8086/88 ubuntu仿真器,assembly,emulation,x86-16,Assembly,Emulation,X86 16,我需要在Ubuntu中模拟8086程序的汇编 我搜索了存储库,发现8085模拟器和8086不同 ubuntu有8086/88汇编仿真器吗?我建议看看 编辑找到: 密件抄送 这是一个用于8086 CPU的C编译器,对于 开发引导加载程序或BIOS相关的8086代码 可以使用模拟器在i386 Linux下运行8086代码, `elksemu’也包括在本包装中。 dosbox(运行旧式的.com文件很好) DOSBox是一款x86仿真器,具有Tandy/Hercules/CGA/EGA/VGA/S

我需要在Ubuntu中模拟8086程序的汇编

我搜索了存储库,发现8085模拟器和8086不同

ubuntu有8086/88汇编仿真器吗?

我建议看看

编辑找到:

  • 密件抄送

    这是一个用于8086 CPU的C编译器,对于 开发引导加载程序或BIOS相关的8086代码

    可以使用模拟器在i386 Linux下运行8086代码, `elksemu’也包括在本包装中。

  • dosbox(运行旧式的.com文件很好)

    DOSBox是一款x86仿真器,具有Tandy/Hercules/CGA/EGA/VGA/SVGA图形, 声音和DOS。它被设计用于在以下平台下运行旧的DOS游戏: 不要支持它。(Win2k/XP/FreeBSD/Linux/MAC OS X)

  • 多塞姆

    DOSEMU是一个PC仿真器应用程序,允许Linux运行DOS 虚拟x86机器中的操作系统。这允许您运行 许多DOS应用程序

    • 通过终端进行彩色文本和全键盘模拟(通过热键)
    • 内置X支持,包括IBM字符集字体
    • 控制台上的图形功能与大多数兼容的视频卡兼容
    • DPMI支持,因此您可以运行DOOM
    • 光盘支持
    • 内置IPX和pktdrvr支持
  • 博克斯

    BoCHS是一个高度可移植的IA-32(x86)PC仿真器,用C++编写, 在最流行的平台上运行。它包括对Intel x86 CPU的仿真, 通用I/O设备和自定义BIOS

  • qemu/kvm

    使用KVM,您可以运行多个虚拟PC,每个虚拟PC都运行未经修改的Linux或Linux Windows图像。每个虚拟机都有专用虚拟化硬件:一个 网卡、磁盘、图形适配器等

    KVM(用于基于内核的虚拟机)是针对 Linux主机位于x86(32位和64位)硬件上


添加到@sehe的精彩答案中

  • VirtualBox也可用于Ubuntu。完整的虚拟机环境

您需要更清楚地了解您打算运行什么。有x86程序集,然后有所有的系统调用int10h int21h等,这些调用与程序集无关,而是与操作系统相关。如果您对指令集感兴趣,我已经剥离了pcemu,以避免混淆底层操作系统或bios,只留下程序集(出于教育目的)

真正的pcemu是一个足够好的8086/88汇编程序,可以在上面运行dos和其他东西。有许多衍生品可供选择

我包括了一份我删掉的原件

你可以很容易地在ubuntu上尝试bochs或dosbox,如果你只想运行一些不在qemu或virtualbox/vmware中运行的老的x86 dos程序(因为它们不模拟dos),只需选择其中一个或另一个或两者即可。

Adrian Cable是另一个模拟8086系统的系统。它比任何其他系统都小:在其原始()形式中,其源代码只有4043字节(8086个字节)长。

您可以使用qemu emulator。 它在两种模式下工作

  • 全系统模式- 在这个qemu模拟完整PC中,您可以定义ran大小、磁盘等。 它将操作系统的映像作为输入。因此,您必须为它编写引导加载程序,它将加载您的16位程序。您可以使用BIOS服务执行I/O。 2) 只有cpu仿真。 您编写的任何指令在这方面都能很好地工作,但当您需要os系统调用时,它会变得很棘手,因为它将16位的系统调用映射到主机os

  • 你到底想做什么?你的程序运行在什么样的平台上?二进制文件的格式是什么?@sehe我想模拟8086的汇编,找到了
    bcc
    ,这看起来是你最好的匹配,尽管我没有用过before@chris-l和我引述的话:“可以在i386 Linux下使用模拟器‘elksemu’运行8086代码,该模拟器也包含在这个软件包中。”此外,如果内存可用,bcc附带了TASM.exe。这是一个功能齐全的快速汇编程序。我爱它胜过爱马斯姆。但是那就是:)噢!我听说过麋鹿,8年前读过。我不知道他们是同一件事的一部分。我站在更正:)它不支持TF,所以它不支持调试器。许多想要这样做的人可能想为8086开发新的手写汇编程序,为此,调试是必不可少的。BOCHS有一个内置的调试器,可以调试引导加载程序,以及在禁用中断的情况下运行的代码。当然,仅仅使用它是一种有趣的可能性。公平地说,OP(9年前)没有询问TF和调试,也没有其他答案提到它。我并不认为这是一个不合格的特征。如果你想在8086tiny中使用TF,至少有一个fork可以实现它:我对你的答案投了赞成票,只是想指出一个限制,让未来的读者决定先尝试哪个选项。另外,/wave@ecm,将该功能添加到仿真器似乎是你的风格:)@Peter Cordes:没错。我没有从通知中找到这个,但是是的。很高兴有人推荐我的作品^