在《汇编语言》第十五章中我们可能遇到这样的问题:程序运行正确,但是debug单步调试,却无法运行
修改int 9h中断例程入口地址的指令,虚拟模式下,debug提示指令无效,而在实模式下,则程序卡死。
这里我的看法如下:因为我们单步的时候,当设置9号中断偏移地址的指令执行后,这时段地址还没有进行相应
的设置,而单步键入命令(如:t命令)的时候程序要调用键盘中断程序,这就导致程序转去一个错误的地址
执行程序,这就造成了一种假象—程序卡死,其实这时只是键盘中断的入口地址不正确,导致键入的字符失去
响应,这样的话,如果我们要用debug调试程序,就需要用g命令跳过设置int 9中断入口地址...



- [123lalala] 在哪里看虚拟软盘的知识呢 04/22 21:42
- [1160321430] 迈过了这道坎感觉心里敞亮多了,但是还没有完,还是要想一想是不是有其他的方法可以优化程序使其变得更加简 04/11 20:14
[2014-04-18 21:00] 一个想了好几天的问题——关于8086cpu自己编写9号中断不能单步的问题
阅读全文 |
评论次数(0) |
浏览次数(669) |
所属类型(疑惑:思考)
页码数(1):
1