汇编语言 王爽 【第四版】int 9h中断例程和 int 16h中断例程总结+ 检测点17.1

汇编语言 王爽 【第四版】int 9h中断例程和 int 16h中断例程总结+ 检测点17.1_第1张图片

键盘输入将引发9号中断,BIOS提供了int 9中断例程。CPU在9 号中断发生后,执行 int 9中断例程,从60h端口读出扫描码,并将其转化为相应的ASCII码或状态信息,存储在内存的指定空间(键盘缓冲区或状态字节)中。(键盘缓冲区是用环形队列结构管理的内存区)。
一般的键盘输入,在CPU执行完 int 9中断例程后,都放到了键盘缓冲区中。键盘缓冲区中有16个字单元,可以存储15个按键的扫描码和对应的ASCIl码。

注意说法 执行int16中断时是从键盘缓冲区中读出字符,不是数据,是一个键盘输入

在这里插入图片描述

BIOS 提供了int 16h 中断例程供程序员调用。int 1 6h中断例程中包含的一个最重要的功能是从键盘缓冲区中读取一个键盘输入,该功能的编号为О。下面的指令从键盘缓冲区中读取一个键盘输入,并将其从键盘缓冲区中删除:
mov ah, O
int 16h
结果:读取出的数据默认写到ax寄存器中,(ah)=扫描码, (al)=ASCII码

汇编语言 王爽 【第四版】int 9h中断例程和 int 16h中断例程总结+ 检测点17.1_第2张图片

注意 这里不是读取扫描码 int 9 是

汇编语言 王爽 【第四版】int 9h中断例程和 int 16h中断例程总结+ 检测点17.1_第3张图片

你可能感兴趣的:(#汇编语言,汇编语言)