王盛帅 发表于 2020-2-4 17:36:56

dosbox是否可以除法溢出

问题一:课本12.6的Divide overflow无法显示
源代码:附件01

结果:附件02


问题二:修改了中断处理程序后也无法显示
源代码:附件03
结果:附件04


jackz007 发表于 2020-2-5 00:26:22

      显然 DOSBOX 并没有接管溢出中断,在附件2的情形中,当溢出中断发生的时候,程序跳向 F000:1060 这个地址的属于 ROM BIOS,其入口代码内容属于垃圾代码;在附件 4 中,程序事先接管了溢出中断,当溢出中断发生的时候,跳向的地址是 0000:0200,这个地址的代码内容显然不是垃圾代码。

王盛帅 发表于 2020-2-5 12:25:20

本帖最后由 王盛帅 于 2020-2-5 12:55 编辑

DOSBOX应该接管溢出中断了还需要单步执行,dos系统中似乎直接就把中断程序运行完了

gang19840815 发表于 2020-2-8 19:27:33

呵呵

sbx 发表于 2020-6-2 22:24:34

本帖最后由 sbx 于 2020-6-2 22:29 编辑

dosbox不显示divide overflow,但也进入了中断处理程序入口,可采用G命令完成do0程序。

一只程序猫 发表于 2023-8-3 10:11:00

可以显示的,你先运行写入程序,再来运行除法程序。
页: [1]
查看完整版本: dosbox是否可以除法溢出