鱼C论坛

 找回密码
 立即注册
查看: 1927|回复: 3

关于汇编检测点15.1的问题

[复制链接]
发表于 2012-12-17 10:39:20 | 显示全部楼层 |阅读模式
3鱼币
书上说IF TF前面已经设置好了,前面是怎么设置的呢?

检测点15.1
(1) 仔细分析一下书中的in9中断例程,看看是否可以精简一下?
其实在我们的int 9中断例程中,模拟int指令调用原int 9中断例程的程序段是可以精简的,因为在进入中断例程后,IF和TF都已置0,没有必要再进行设置了,对于程序段:
pushf ;标志寄存器入栈
pushf
pop bx
and bh,11111100b ;IF和TF为flag的第9位和第8位
push bx
popf ;TF=0,IF=0
call dword ptr ds:[0] ;CS、IP入栈;(IP)=ds:[0],(CS)=ds:[2]

最佳答案

查看完整内容

你的疑问是:书上说IF TF前面已经设置好了,前面是怎么设置的呢? 15.4 键盘输入的处理过程:1、键盘产生扫描码;2、扫描码送入60h端口;3、引发9号中断;4、cpu执行int 9中断例程。。。 中断过程中 IF=0,TF=0; 看15.2,对中断过程的说明, 4步,第二步就是设置IF,TF的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-12-17 10:39:21 | 显示全部楼层
本帖最后由 小新110 于 2012-12-17 14:39 编辑

你的疑问是:书上说IF TF前面已经设置好了,前面是怎么设置的呢?
15.4 键盘输入的处理过程:1、键盘产生扫描码;2、扫描码送入60h端口;3、引发9号中断;4、cpu执行int 9中断例程。。。
中断过程中 IF=0,TF=0;  看15.2,对中断过程的说明, 4步,第二步就是设置IF,TF的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-12-17 14:30:00 | 显示全部楼层
哎,终于看懂了,看了小一个小时啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-12-17 14:30:37 | 显示全部楼层
你的疑问是:书上说IF TF前面已经设置好了,前面是怎么设置的呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 00:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表