💿
汇编语言 - 王爽
  • 本电子书信息
  • 各章检测点答案
    • 第 1 章:基础知识
    • 第 2 章:寄存器
    • 第 3 章:寄存器(内存访问)
    • 第 4 章:第一个程序
    • 第 5 章:[BX]和 loop 指令
    • 第 6 章:包含多个段的程序
    • 第 7 章:更灵活的定位内存地址的方法
    • 第 8 章:数据处理的两个基本问题
    • 第 9 章:转移指令的原理
    • 第 10 章:CALL 和 RET 指令
    • 第 11 章:标志寄存器
    • 第 12 章:内中断
    • 第 13 章:int 指令
    • 第 14 章:端口
    • 第 15 章:外中断
    • 第 16 章:直接定址表
    • 第 17 章:使用 BIOS 进行键盘输入和磁盘读写
Powered by GitBook
On this page
  1. 各章检测点答案

第 17 章:使用 BIOS 进行键盘输入和磁盘读写

检测点 17.1

“在 int16h 中断例程中,一定有设置 IF=1 的指令。”这种说法对吗?

答案:对。

int 16h 中断的 0 号功能,若缓冲区空,则循环等待,直到缓冲区中有数据。所以缓冲区空的时候,它又会继续检测,也就是可以说返回上一步。

int 9h 是将按键信息放入缓冲区。 若没有设置 IF=1 的指令,也即 IF=0,则不会处理任何(可屏蔽)中断,当然也就不能屏蔽 int 9 中断,则缓冲区永远不会有数据放入,这将造成 int 16h 的死循环检测。显然不允许这样的事发生,所以一定有设置 IF=1 的指令。

Previous第 16 章:直接定址表

Last updated 4 years ago