8086的一个中断服务程序如下,关于TF标志位置位和复位,麻烦大神解释下!谢谢!

8086的一个中断服务程序如下,关于TF标志位置位和复位,麻烦大神解释下!谢谢!,第1张

这是一个技巧,是利用堆栈来传送参数。

。。。

在主程序,先压栈一个字,当做参数

接着,就调用这个例程。

在例程中,对[BP + 8]读写,就是对参数 *** 作。

(为什么是 8? 可参考 INT 的调用过程。)

返回主程序后,再出栈一个字,即可得到该例程的 *** 作结果。

。。。

PUSH BX参数入栈,供中断程序使用

INT    nnH调用楼主给出的中断程序

POP BX取出中断程序的处理结果

。。。

楼主给出的程序,和 TF 毫无关系。

(和 TF 有关的,应该是别的什么程序,楼主并没有给出。)

。。。

如果觉得有用,请及时采纳。

在中断中,只修改PC的话,应该是不行的,因为CPU软复位后还是在中断模式下,不是在用户模式下。

在中断中加几条汇编语句就可以了,先切到用户模式,

MSR CPSR_c, #USER_MODE

再B Reset


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11428081.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存