Assembly emu8086不支持int 14h BIOS串行端口API
我在使用emu8086进行汇编时遇到问题。当使用Assembly emu8086不支持int 14h BIOS串行端口API,assembly,emu8086,Assembly,Emu8086,我在使用emu8086进行汇编时遇到问题。当使用INT 14h时,将显示错误 问题: 是否有办法配置emu8086矢量表 是否有其他程序集仿真器支持int14h 如果配置正确,Bochs、QEMU、DosBox可以模拟串行端口及其BIOSS支持int 14h。据我所知,EMU8086不支持int14h,根据屏幕截图,安装自己的中断处理程序的常用机制可以工作SIDT[m32]存储IDT的地址。我猜你应该将段部分放入段寄存器,并使用另一部分作为地址,然后索引到表中以设置你自己的条目。Int14中很少
INT 14h
时,将显示错误
问题:
int14h
如果配置正确,Bochs、QEMU、DosBox可以模拟串行端口及其BIOSS支持
int 14h
。据我所知,EMU8086不支持int14h
,根据屏幕截图,安装自己的中断处理程序的常用机制可以工作SIDT[m32]
存储IDT的地址。我猜你应该将段部分放入段寄存器,并使用另一部分作为地址,然后索引到表中以设置你自己的条目。Int14中很少有可赎回的功能,如果在真正的硬件上运行,使用它的程序很少能正常运行。串行端口需要一个硬件中断处理程序来防止数据丢失,BIOS不需要。@PeterCordes:EMU8086只支持8086指令集,因此SIDT不可用。通常关闭中断,直接设置段和偏移字(使用mov
指令)更新中断向量表,然后重新启用中断。